Details

Time bar (total: 57.5s)

analyze1.2s (2.1%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
0%0%99.8%0.2%0%0%0%8
7.8%7.8%92%0.2%0%0%0%9
7.8%7.8%92%0.2%0%0%0%10
10.2%10.1%89.7%0.2%0%0%0%11
10.2%10.1%89.7%0.2%0%0%0%12
Compiler

Compiled 29 to 18 computations (37.9% saved)

sample10.8s (18.8%)

Results
8.5s5559×body1024valid
1.3s1290×body512valid
574.0ms183×body2048valid
472.0ms1224×body256valid
Bogosity

preprocess223.0ms (0.4%)

Algorithm
egg-herbie
Rules
1113×fma-def_binary64
848×fma-neg_binary64
366×cancel-sign-sub-inv_binary64
284×unsub-neg_binary64
282×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
071273
1163273
2376273
3798273
41265273
51969273
62871273
73825273
84656273
95142273
105264273
115269273
125269273
135871273
145991273
155991273
165991273
044
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 (-.f64 phi1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (cos.f64 (-.f64 phi2 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi2)) (cos.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 phi2) (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 (-.f64 phi1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 phi1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (cos.f64 (-.f64 phi1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (cos.f64 (-.f64 phi1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 phi2 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (cos.f64 (-.f64 phi2 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (cos.f64 (-.f64 phi2 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 (-.f64 phi2 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 phi2 lambda2)) (neg.f64 (cos.f64 lambda1))) (*.f64 (cos.f64 phi1) (sin.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 phi1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (cos.f64 (-.f64 lambda1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (fma.f64 (sin.f64 phi2) (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi1))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (fma.f64 (cos.f64 (-.f64 lambda1 phi1)) (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (*.f64 (sin.f64 phi2) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 phi2)) (cos.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi2)))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 (-.f64 lambda1 phi2))))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 phi2)))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (fma.f64 (cos.f64 (-.f64 lambda1 phi2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 lambda2))))
(atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 phi2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (-.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 32 to 21 computations (34.4% saved)

simplify37.0ms (0.1%)

Algorithm
egg-herbie
Rules
543×fma-def_binary64
194×fma-neg_binary64
85×cancel-sign-sub-inv_binary64
59×distribute-rgt-neg-in_binary64
48×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01839
13239
26739
313239
420839
532139
650039
766439
890539
9136739
10152839
11155439
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))

eval1.0ms (0%)

Compiler

Compiled 52 to 21 computations (59.6% saved)

prune1.0ms (0%)

Pruning

2 alts after pruning (2 fresh and 0 done)

PrunedKeptTotal
New112
Fresh011
Picked000
Done000
Total123
Error
12.2b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 28 to 17 computations (39.3% saved)

localize32.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
0.2b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 94 to 17 computations (81.9% saved)

series23.0ms (0%)

Counts
4 → 96
Calls

30 calls:

TimeVariablePointExpression
3.0ms
lambda2
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
2.0ms
lambda1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
2.0ms
phi1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
phi2
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
phi1
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))

rewrite91.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
763×prod-diff_binary64
687×log-prod_binary64
363×fma-def_binary64
261×expm1-udef_binary64
261×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01236
126336
2365736
Stop Event
node limit
Counts
4 → 158
Calls
Call 1
Inputs
(cos.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))) (fma.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (sin.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2))))) (cos.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2)))))) (*.f64 (sin.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2))))) (sin.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 lambda2)))) (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 (*.f64 (neg.f64 lambda2) 1))) (*.f64 (sin.f64 lambda1) (sin.f64 (*.f64 (neg.f64 lambda2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 (neg.f64 lambda2) lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 lambda2) lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 (+.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))) (fma.f64 (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (*.f64 (neg.f64 lambda2) 1))) (*.f64 (cos.f64 lambda1) (sin.f64 (*.f64 (neg.f64 lambda2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 (neg.f64 lambda2) lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 (neg.f64 lambda2) lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2))))) (cos.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2)))))) (*.f64 (cos.f64 (/.f64 (pow.f64 lambda1 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2))))) (sin.f64 (/.f64 (pow.f64 lambda2 3) (fma.f64 lambda1 lambda1 (*.f64 lambda2 (+.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (cos.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 lambda2)))) (*.f64 (cos.f64 (/.f64 (*.f64 lambda1 lambda1) (+.f64 lambda1 lambda2))) (sin.f64 (/.f64 (*.f64 lambda2 lambda2) (+.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3)) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 (+.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1 (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (sin.f64 lambda1) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (neg.f64 (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (cos.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi2) 3) (pow.f64 (sin.f64 phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1))))))

simplify99.0ms (0.2%)

Algorithm
egg-herbie
Rules
488×neg-mul-1_binary64
475×neg-sub0_binary64
473×*-commutative_binary64
447×distribute-lft-out_binary64
428×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01761893
15381800
216731626
331931550
474531550
Stop Event
node limit
Counts
254 → 247
Calls
Call 1
Inputs
(cos.f64 (neg.f64 lambda2))
(+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 lambda1)
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1))))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (neg.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
Outputs
(cos.f64 (neg.f64 lambda2))
(cos.f64 lambda2)
(+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (cos.f64 lambda2) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))
(-.f64 (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))
(fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))
(+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))
(+.f64 (cos.f64 lambda2) (-.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2)))))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2))))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))
(fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3)) (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))))
(+.f64 (-.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) (fma.f64 1/6 (neg.f64 (*.f64 (pow.f64 lambda1 3) (sin.f64 lambda2))) (cos.f64 lambda2)))
(+.f64 (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2)))) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2)))
(+.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2))) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 lambda1)
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))
(fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1))))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(sin.f64 (neg.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 lambda1 lambda1) (neg.f64 (*.f64 -1/2 (sin.f64 lambda2))))) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 lambda1 lambda1) (neg.f64 (*.f64 -1/2 (sin.f64 lambda2))))) (sin.f64 lambda2)))
(+.f64 (-.f64 (*.f64 lambda1 (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 (pow.f64 lambda1 3) -1/6))))
(fma.f64 (cos.f64 lambda2) (*.f64 (pow.f64 lambda1 3) -1/6) (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))
(-.f64 (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))))
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))))))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)) (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))) (fma.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7))))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)))))
(fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) 1/24)))))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4))))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) 1/24))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (sin.f64 phi1))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4))))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1))))))
(-.f64 (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (sin.f64 phi1))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2))))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1)))) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 3) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(+.f64 (*.f64 (neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2))) (-.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (cos.f64 lambda2))))
(fma.f64 (pow.f64 lambda1 3) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 -1/6 (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2)))))
(fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)))) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1)) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 phi2))) (*.f64 (sin.f64 lambda1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) phi1)
(*.f64 phi1 (cos.f64 phi2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) phi1))
(*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (fma.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (cos.f64 phi2) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (cos.f64 phi2))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 phi1 7)) (fma.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)) (*.f64 phi1 (cos.f64 phi2)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 phi2) (+.f64 (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7))))))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (sin.f64 phi1))
(fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (sin.f64 phi1))
(*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) 1/24))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) (sin.f64 phi1)) (fma.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720))))
(+.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (sin.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4))))))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))
(*.f64 (cos.f64 phi2) (sin.f64 phi1))

eval78.0ms (0.1%)

Compiler

Compiled 8761 to 1811 computations (79.3% saved)

prune130.0ms (0.2%)

Pruning

39 alts after pruning (39 fresh and 0 done)

PrunedKeptTotal
New20839247
Fresh000
Picked101
Done000
Total20939248
Error
6.0b
Counts
248 → 39
Alt Table
Click to see full alt table
StatusErrorProgram
6.5b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.5b
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.5b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
14.5b
(atan2.f64 (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 (+.f64 lambda1 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
53.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
6.4b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
24.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
25.6b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
6.6b
(atan2.f64 (*.f64 (+.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
25.1b
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
25.3b
(atan2.f64 (*.f64 (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.0b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
19.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
30.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
12.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
12.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
26.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
18.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2)))))))
12.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
35.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
21.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
12.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
20.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
12.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
17.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
18.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
30.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
31.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
23.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
19.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
13.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
32.2b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
33.9b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.2b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
35.9b
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
17.9b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 2884 to 1716 computations (40.5% saved)

localize43.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.2b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 133 to 23 computations (82.7% saved)

series10.0ms (0%)

Counts
2 → 48
Calls

12 calls:

TimeVariablePointExpression
2.0ms
lambda2
@0
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
1.0ms
lambda2
@0
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
1.0ms
lambda1
@0
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
1.0ms
lambda1
@inf
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
1.0ms
lambda2
@inf
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))

rewrite58.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
846×pow1_binary64
770×add-log-exp_binary64
770×log1p-expm1-u_binary64
770×expm1-log1p-u_binary64
752×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0916
117416
2207516
Stop Event
node limit
Counts
2 → 28
Calls
Call 1
Inputs
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 lambda2)) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 lambda1) 3) (pow.f64 (sin.f64 lambda2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 lambda2) 3) (pow.f64 (cos.f64 lambda1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (+.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 lambda2) 3) (pow.f64 (sin.f64 lambda1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 lambda1) 3) (pow.f64 (cos.f64 lambda2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))))))))

simplify126.0ms (0.2%)

Algorithm
egg-herbie
Rules
730×distribute-lft-out_binary64
628×distribute-rgt-in_binary64
466×sqr-pow_binary64
450×unswap-sqr_binary64
447×fma-def_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
077622
1217604
2624564
32213548
43203546
55213546
66041546
76826546
87472546
Stop Event
node limit
Counts
76 → 59
Calls
Call 1
Inputs
(sin.f64 lambda2)
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (sin.f64 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (sin.f64 lambda2)))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 6))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (sin.f64 lambda2))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 lambda2 (cos.f64 lambda1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1))))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(sin.f64 lambda1)
(+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 lambda1))))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) lambda1)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 lambda2) lambda1))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 lambda2) lambda1)))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/5040 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 7))))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
Outputs
(sin.f64 lambda2)
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (sin.f64 lambda2))
(fma.f64 -1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (sin.f64 lambda2))
(fma.f64 (sin.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 lambda1)) (sin.f64 lambda2))
(*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda1 lambda1))) (sin.f64 lambda2))
(*.f64 (sin.f64 lambda2) (+.f64 1 (*.f64 -1/2 (*.f64 lambda1 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (sin.f64 lambda2)))
(fma.f64 -1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (fma.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4)) (sin.f64 lambda2)))
(+.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (*.f64 1/24 (pow.f64 lambda1 4)))))
(*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (+.f64 1 (*.f64 1/24 (pow.f64 lambda1 4)))))
(*.f64 (sin.f64 lambda2) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 lambda1 4)) (*.f64 -1/2 (*.f64 lambda1 lambda1)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 6))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4))) (sin.f64 lambda2))))
(fma.f64 -1/720 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 6)) (fma.f64 -1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (fma.f64 1/24 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 4)) (sin.f64 lambda2))))
(+.f64 (sin.f64 lambda2) (fma.f64 (sin.f64 lambda2) (*.f64 -1/720 (pow.f64 lambda1 6)) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (*.f64 1/24 (pow.f64 lambda1 4))))))
(+.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/720 (pow.f64 lambda1 6)) (+.f64 (*.f64 1/24 (pow.f64 lambda1 4)) (*.f64 -1/2 (*.f64 lambda1 lambda1))))))
(*.f64 (sin.f64 lambda2) (+.f64 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 lambda1 4)) (*.f64 -1/2 (*.f64 lambda1 lambda1)))) (*.f64 -1/720 (pow.f64 lambda1 6))))
(*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (+.f64 1 (*.f64 (pow.f64 lambda1 4) (+.f64 1/24 (*.f64 -1/720 (*.f64 lambda1 lambda1)))))))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 lambda2 (cos.f64 lambda1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (*.f64 lambda2 (cos.f64 lambda1)))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (*.f64 lambda2 (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))
(*.f64 (cos.f64 lambda1) (fma.f64 -1/6 (pow.f64 lambda2 3) lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1)))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (fma.f64 lambda2 (cos.f64 lambda1) (*.f64 1/120 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 5)))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (*.f64 (cos.f64 lambda1) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))))
(*.f64 (cos.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) (fma.f64 1/120 (pow.f64 lambda2 5) lambda2)))
(*.f64 (cos.f64 lambda1) (+.f64 (*.f64 1/120 (pow.f64 lambda2 5)) (fma.f64 -1/6 (pow.f64 lambda2 3) lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (cos.f64 lambda1))))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 7)) (fma.f64 lambda2 (cos.f64 lambda1) (*.f64 1/120 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 5))))))
(+.f64 (*.f64 (cos.f64 lambda1) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) (*.f64 -1/5040 (pow.f64 lambda2 7)))))
(*.f64 (cos.f64 lambda1) (+.f64 (fma.f64 1/120 (pow.f64 lambda2 5) lambda2) (fma.f64 -1/6 (pow.f64 lambda2 3) (*.f64 -1/5040 (pow.f64 lambda2 7)))))
(*.f64 (cos.f64 lambda1) (+.f64 (fma.f64 -1/6 (pow.f64 lambda2 3) (*.f64 -1/5040 (pow.f64 lambda2 7))) (fma.f64 1/120 (pow.f64 lambda2 5) lambda2)))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(*.f64 (sin.f64 lambda2) (cos.f64 lambda1))
(sin.f64 lambda1)
(+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))
(+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))
(fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 lambda1)))))
(+.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 4)))))
(+.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (*.f64 1/24 (pow.f64 lambda2 4)))))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 1/24 (pow.f64 lambda2 4))))
(*.f64 (sin.f64 lambda1) (+.f64 1 (fma.f64 1/24 (pow.f64 lambda2 4) (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (sin.f64 lambda1))) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))) (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (sin.f64 lambda1))))))
(fma.f64 -1/720 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 6)) (+.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 4))))))
(+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (*.f64 1/24 (pow.f64 lambda2 4)))) (fma.f64 -1/720 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 6)) (sin.f64 lambda1)))
(fma.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) (*.f64 1/24 (pow.f64 lambda2 4))) (*.f64 (sin.f64 lambda1) (fma.f64 -1/720 (pow.f64 lambda2 6) 1)))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 1/24 (pow.f64 lambda2 4) (*.f64 -1/2 (*.f64 lambda2 lambda2))) (fma.f64 -1/720 (pow.f64 lambda2 6) 1)))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 -1/720 (pow.f64 lambda2 6) 1) (fma.f64 1/24 (pow.f64 lambda2 4) (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 -1/720 (pow.f64 lambda2 6) 1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) (*.f64 1/24 (pow.f64 lambda2 4)))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) lambda1)
(*.f64 lambda1 (cos.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 lambda2) lambda1))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 lambda1 (cos.f64 lambda2)))
(fma.f64 lambda1 (cos.f64 lambda2) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))))
(*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 lambda2) lambda1)))
(fma.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5)) (fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 lambda1 (cos.f64 lambda2))))
(fma.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5)) (fma.f64 lambda1 (cos.f64 lambda2) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 1/120 (pow.f64 lambda1 5)))))
(*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (+.f64 lambda1 (*.f64 1/120 (pow.f64 lambda1 5)))))
(*.f64 (cos.f64 lambda2) (+.f64 lambda1 (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/5040 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 7))))))
(fma.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5)) (fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 -1/5040 (cos.f64 lambda2)) (pow.f64 lambda1 7)))))
(fma.f64 1/120 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 5)) (fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 lambda1 (cos.f64 lambda2) (*.f64 -1/5040 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 7))))))
(+.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/5040 (pow.f64 lambda1 7)) (*.f64 1/120 (pow.f64 lambda1 5)))))
(*.f64 (cos.f64 lambda2) (+.f64 (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (*.f64 -1/6 (pow.f64 lambda1 3))) (+.f64 lambda1 (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (+.f64 lambda1 (*.f64 -1/5040 (pow.f64 lambda1 7))))))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))
(*.f64 (sin.f64 lambda1) (cos.f64 lambda2))

localize29.0ms (0%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 80 to 16 computations (80% saved)

series13.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
3.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
2.0ms
phi2
@0
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
1.0ms
phi2
@inf
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
1.0ms
phi1
@0
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
lambda1
@0
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))

rewrite66.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
684×log-prod_binary64
490×fma-def_binary64
278×fma-neg_binary64
273×pow1/3_binary64
269×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01222
126722
2379422
Stop Event
node limit
Counts
2 → 52
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (sin.f64 phi1) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (sin.f64 phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 phi2) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (cos.f64 phi2) 3) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi2) 3) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 1))))))

simplify97.0ms (0.2%)

Algorithm
egg-herbie
Rules
866×fma-def_binary64
656×associate-*l*_binary64
596×associate-*r*_binary64
557×distribute-rgt-neg-out_binary64
541×fma-neg_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01291273
13781228
211431123
347641115
Stop Event
node limit
Counts
124 → 103
Calls
Call 1
Inputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
Outputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 3) -1/6)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (fma.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 5) 1/120))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7))) (+.f64 (*.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7)) (fma.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 7)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (pow.f64 phi1 5) 1/120)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(-.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (*.f64 lambda1 (sin.f64 phi1)) (fma.f64 (sin.f64 phi1) (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) -1/2))))
(fma.f64 (sin.f64 phi1) (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 lambda1 lambda1)))))
(fma.f64 (sin.f64 phi1) (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 lambda2) -1/2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1))) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))) (fma.f64 (sin.f64 phi1) (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) -1/2)))) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 lambda1 lambda1)))) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 phi1))) (+.f64 (neg.f64 lambda1) (*.f64 1/6 (pow.f64 lambda1 3)))))
(fma.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 lambda2) -1/2))) (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2))) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)))))
(*.f64 (sin.f64 phi1) (+.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 3))) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2) (fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 -1/2 (neg.f64 (sin.f64 lambda2))) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 lambda1 (cos.f64 phi2))))))
(fma.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 1/2 (sin.f64 lambda2)))))
(fma.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2) (fma.f64 (cos.f64 phi2) (*.f64 lambda1 (cos.f64 lambda2)) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) (*.f64 (*.f64 -1/6 (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 lambda2)))) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (*.f64 lambda1 (cos.f64 phi2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3))))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 phi2)) -1/2)) (cos.f64 phi2))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2))) (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (cos.f64 phi2))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))
(-.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))
(fma.f64 lambda2 (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(fma.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 phi2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2))))
(fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)))))
(fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 phi2)))))
(fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(fma.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2))))))
(fma.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))

localize74.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
2.6b
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
11.4b
(+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))
Compiler

Compiled 178 to 87 computations (51.1% saved)

series7.0ms (0%)

Counts
2 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
phi2
@inf
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
1.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
1.0ms
phi1
@0
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
1.0ms
phi2
@inf
(+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))
1.0ms
phi2
@0
(+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))

rewrite86.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
703×log-prod_binary64
684×fma-def_binary64
314×fma-neg_binary64
265×expm1-udef_binary64
265×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01539
132735
2422935
Stop Event
node limit
Counts
2 → 147
Calls
Call 1
Inputs
(+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4)))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (*.f64 (pow.f64 phi2 4) 1/4) (-.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1))) (/.f64 (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2) (-.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))) (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))) 2) (cbrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))) (sqrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (fma.f64 -1/8 (pow.f64 phi2 6) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 3)) (/.f64 1 (fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (-.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (pow.f64 phi2 4) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (pow.f64 phi2 4) 1/4) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2)) (/.f64 1 (-.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (-.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (pow.f64 phi2 4) 1/4)) (fma.f64 -1/8 (pow.f64 phi2 6) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (-.f64 (*.f64 (pow.f64 phi2 4) 1/4) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1/8 (pow.f64 phi2 6) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 3)) (fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (-.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (pow.f64 phi2 4) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 -1/8 (pow.f64 phi2 6) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 3)) (+.f64 (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2) (-.f64 (*.f64 (pow.f64 phi2 4) 1/4) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (pow.f64 phi2 4) 1/4) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2)) (-.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (fma.f64 -1/8 (pow.f64 phi2 6) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 3))) (neg.f64 (fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (-.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (pow.f64 phi2 4) 1/4))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (*.f64 (pow.f64 phi2 4) 1/4) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2))) (neg.f64 (-.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) 3) (*.f64 (pow.f64 (pow.f64 phi2 4) 3) 1/13824)) (fma.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (-.f64 (*.f64 (pow.f64 phi2 8) 1/576) (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (*.f64 1/24 (pow.f64 phi2 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2) (*.f64 (pow.f64 phi2 4) 1/4)) (-.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 phi2 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (*.f64 (pow.f64 phi2 8) 1/576)) (-.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (*.f64 1/24 (pow.f64 phi2 4))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (-.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (pow.f64 phi2 4) 1/4)) (fma.f64 -1/8 (pow.f64 phi2 6) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (-.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (-.f64 (*.f64 (pow.f64 phi2 4) 1/4) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 phi2 phi2)))) (exp.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 -1/2) (*.f64 phi2 phi2)) (+.f64 1 (expm1.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 phi2 phi2)))) (+.f64 1 (expm1.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (pow.f64 phi2 4)) 1/24) (exp.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 phi2 4)))) (exp.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1))) (pow.f64 (exp.f64 -1/2) (*.f64 phi2 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 phi2 phi2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1))) (+.f64 1 (expm1.f64 (*.f64 -1/2 (*.f64 phi2 phi2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 1 (expm1.f64 (*.f64 1/24 (pow.f64 phi2 4))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/2 (*.f64 phi2 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log1p.f64 (fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/2 (*.f64 phi2 phi2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 phi2 (*.f64 -1/2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 phi2 phi2) -1/2 (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 phi2 phi2) (*.f64 (*.f64 phi2 phi2) 1/24) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1 (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 1/24 (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 phi2 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (*.f64 1/24 (pow.f64 phi2 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 phi2 4) 1/24 (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/24 (pow.f64 phi2 4)) 1 (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 1 (*.f64 -1/2 (*.f64 phi2 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 phi2 4)) (*.f64 (pow.f64 (cbrt.f64 phi2) 2) -1/2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 phi2 8)) (*.f64 (cbrt.f64 (pow.f64 phi2 4)) 1/24) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) 2) (*.f64 -1/2 (*.f64 phi2 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) 2) (cbrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (*.f64 -1/2 (*.f64 phi2 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 phi2 phi2))) (cbrt.f64 (*.f64 (pow.f64 phi2 4) 1/4)) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 phi2 4) 1/4)) (cbrt.f64 (*.f64 -1/2 (*.f64 phi2 phi2))) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 1/24 (pow.f64 phi2 4))) (cbrt.f64 (*.f64 (pow.f64 phi2 8) 1/576)) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 phi2 8) 1/576)) (cbrt.f64 (*.f64 1/24 (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (*.f64 -1/2 (*.f64 phi2 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 phi2 (sqrt.f64 -1/2)) (*.f64 phi2 (sqrt.f64 -1/2)) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 phi2 phi2) (sqrt.f64 1/24)) (*.f64 (*.f64 phi2 phi2) (sqrt.f64 1/24)) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 (pow.f64 (pow.f64 phi2 4) 3) 1/13824 1) (/.f64 1 (+.f64 1 (fma.f64 (pow.f64 phi2 8) 1/576 (*.f64 -1/24 (pow.f64 phi2 4))))) (*.f64 -1/2 (*.f64 phi2 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 1 (*.f64 (pow.f64 phi2 8) 1/576)) (/.f64 1 (+.f64 1 (*.f64 -1/24 (pow.f64 phi2 4)))) (*.f64 -1/2 (*.f64 phi2 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 phi2) phi2 (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) 1 (*.f64 1/24 (pow.f64 phi2 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (cbrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1))) (cbrt.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (*.f64 1/24 (pow.f64 phi2 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (hypot.f64 1 (*.f64 phi2 (sqrt.f64 -1/2))) (hypot.f64 1 (*.f64 phi2 (sqrt.f64 -1/2))) (*.f64 1/24 (pow.f64 phi2 4)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (cbrt.f64 (pow.f64 phi2 4))) (pow.f64 (cbrt.f64 phi2) 2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/2 phi2) 1) phi2 (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/2 phi2) (pow.f64 (cbrt.f64 phi2) 2)) (cbrt.f64 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/2 phi2) (sqrt.f64 phi2)) (sqrt.f64 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/24 (*.f64 phi2 phi2)) (*.f64 phi2 phi2) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 1/24 (cbrt.f64 (pow.f64 phi2 8))) (cbrt.f64 (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) 1) (*.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (sin.f64 phi1)) (*.f64 (*.f64 1/24 (pow.f64 phi2 4)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) 3) (pow.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)) 3)) (fma.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (-.f64 (*.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1))) (*.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)))) (*.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 -1/8 (pow.f64 phi2 6) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 3)) (sin.f64 phi1)) (fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (-.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (pow.f64 phi2 4) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (*.f64 (pow.f64 phi2 4) 1/4) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2)) (sin.f64 phi1)) (-.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (fma.f64 -1/8 (pow.f64 phi2 6) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 3))) (fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (-.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (pow.f64 phi2 4) 1/4)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (-.f64 (*.f64 (pow.f64 phi2 4) 1/4) (pow.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) 2))) (-.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (fma.f64 1/24 (pow.f64 phi2 4) 1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1))) (exp.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) 3) (pow.f64 (sin.f64 phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 phi2 phi2) (*.f64 -1/2 (sin.f64 phi1)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (sin.f64 phi1) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (fma.f64 1/24 (pow.f64 phi2 4) 1) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (*.f64 (sin.f64 phi1) (*.f64 1/24 (pow.f64 phi2 4))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) 2) (*.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (pow.f64 phi2 4) 1/4)) (*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (*.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 phi2 (sqrt.f64 -1/2)) (*.f64 (*.f64 phi2 (sqrt.f64 -1/2)) (sin.f64 phi1)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) 1 (*.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -1/2 phi2) (*.f64 phi2 (sin.f64 phi1)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (sin.f64 phi1) (*.f64 (*.f64 1/24 (pow.f64 phi2 4)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1))) (cbrt.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))) (cbrt.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1))) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)))) (cbrt.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))) (cbrt.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1))) (sqrt.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1))) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)))) (sqrt.f64 (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 phi2 (sqrt.f64 -1/2))) (*.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 phi2 (sqrt.f64 -1/2))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (sin.f64 phi1)) (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1))) (*.f64 (sqrt.f64 (sin.f64 phi1)) (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1))) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sqrt.f64 (sin.f64 phi1))) (*.f64 (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sqrt.f64 (sin.f64 phi1))) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 phi2 (sqrt.f64 -1/2)) (sqrt.f64 (sin.f64 phi1))) (*.f64 (*.f64 phi2 (sqrt.f64 -1/2)) (sqrt.f64 (sin.f64 phi1))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) -1/2) (*.f64 phi2 phi2) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)) -1/2 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (cbrt.f64 (*.f64 (pow.f64 phi2 4) 1/4))) (cbrt.f64 (*.f64 -1/2 (*.f64 phi2 phi2))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (*.f64 phi2 (sqrt.f64 -1/2))) (*.f64 phi2 (sqrt.f64 -1/2)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (*.f64 -1/2 phi2)) phi2 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (pow.f64 (cbrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) 2)) (cbrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1))) (sqrt.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2)) (cbrt.f64 (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sqrt.f64 (sin.f64 phi1))) (sqrt.f64 (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2)) (cbrt.f64 (sin.f64 phi1)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (sqrt.f64 (sin.f64 phi1))) (sqrt.f64 (sin.f64 phi1)) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) 1) (sin.f64 phi1)))))))

simplify137.0ms (0.2%)

Algorithm
egg-herbie
Rules
691×unswap-sqr_binary64
560×distribute-lft-out_binary64
550×distribute-rgt-in_binary64
506×distribute-lft-in_binary64
458×distribute-rgt-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
044791
1146701
2569636
33199621
45365621
55855621
66948621
77043621
87175621
97325621
Stop Event
node limit
Counts
183 → 173
Calls
Call 1
Inputs
1
(+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 1/24 (pow.f64 phi2 4))
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 1/24 (pow.f64 phi2 4))
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(*.f64 phi1 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (*.f64 phi1 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (*.f64 phi1 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (*.f64 phi1 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
Outputs
1
(+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))
(+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))
(fma.f64 -1/2 (*.f64 phi2 phi2) 1)
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2))))
(fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))
(fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2))))
(fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))
(fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))
(*.f64 1/24 (pow.f64 phi2 4))
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))
(fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/2 (*.f64 phi2 phi2)))
(fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 1/24 (pow.f64 phi2 4)))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))
(fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))
(fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))
(*.f64 1/24 (pow.f64 phi2 4))
(+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))
(fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/2 (*.f64 phi2 phi2)))
(fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 1/24 (pow.f64 phi2 4)))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))
(fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))
(fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))
(fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1))
(*.f64 phi1 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (+.f64 1 (fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/2 (*.f64 phi2 phi2)))) phi1)
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) phi1)
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) phi1)
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (*.f64 phi1 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (pow.f64 phi1 3)) (*.f64 (+.f64 1 (fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/2 (*.f64 phi2 phi2)))) phi1))
(fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) phi1 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (*.f64 phi1 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2)))))))
(fma.f64 1/120 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (pow.f64 phi1 5)) (fma.f64 -1/6 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (pow.f64 phi1 3)) (*.f64 (+.f64 1 (fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/2 (*.f64 phi2 phi2)))) phi1)))
(+.f64 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) phi1) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (+.f64 phi1 (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 phi1 (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))) (*.f64 phi1 (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (pow.f64 phi2 2))))))))
(fma.f64 -1/5040 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (pow.f64 phi1 7)) (fma.f64 1/120 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (pow.f64 phi1 5)) (fma.f64 -1/6 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (pow.f64 phi1 3)) (*.f64 (+.f64 1 (fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/2 (*.f64 phi2 phi2)))) phi1))))
(+.f64 (fma.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) phi1 (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(fma.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/6 (pow.f64 phi1 3))) (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7)))))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (+.f64 (fma.f64 -1/5040 (pow.f64 phi1 7) (*.f64 1/120 (pow.f64 phi1 5))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (fma.f64 -1/5040 (pow.f64 phi1 7) (*.f64 1/120 (pow.f64 phi1 5))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi2 2)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(sin.f64 phi1)
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))))
(fma.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (sin.f64 phi1))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))
(*.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 phi1)))
(*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))
(fma.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 1/24 (pow.f64 phi2 4))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))
(*.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 phi1)))
(*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))
(fma.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 1/24 (pow.f64 phi2 4))))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))
(+.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/24 (pow.f64 phi2 4) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (sin.f64 phi1))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (fma.f64 1/24 (pow.f64 phi2 4) 1)) (sin.f64 phi1))

localize41.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
8.1b
(cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))
Compiler

Compiled 114 to 30 computations (73.7% saved)

series9.0ms (0%)

Counts
2 → 40
Calls

12 calls:

TimeVariablePointExpression
2.0ms
lambda2
@0
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
1.0ms
lambda1
@0
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
1.0ms
lambda2
@-inf
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
1.0ms
lambda1
@-inf
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
1.0ms
lambda2
@inf
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)

rewrite59.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
864×pow1_binary64
810×add-log-exp_binary64
810×log1p-expm1-u_binary64
810×expm1-log1p-u_binary64
792×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0815
118315
2215315
Stop Event
node limit
Counts
2 → 47
Calls
Call 1
Inputs
(cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 (neg.f64 lambda2))) (*.f64 (cos.f64 lambda1) (sin.f64 (neg.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/3) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3/2) 1/3) (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3/2) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3)) (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x sin.f64 (-.f64 lambda1 lambda2))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))))
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3/2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3/2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) 3) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 6))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 3 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))))))))

simplify67.0ms (0.1%)

Algorithm
egg-herbie
Rules
645×associate-*l*_binary64
642×associate-*r*_binary64
600×unsub-neg_binary64
408×unswap-sqr_binary64
385×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0120889
1411819
21419745
36677738
Stop Event
node limit
Counts
87 → 82
Calls
Call 1
Inputs
(sin.f64 (neg.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(pow.f64 (sin.f64 (neg.f64 lambda2)) 3)
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))))) lambda1) (pow.f64 (sin.f64 (neg.f64 lambda2)) 3))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))))) lambda1) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))))) (pow.f64 lambda1 2)) (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))))) lambda1) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))))) (pow.f64 lambda1 2)) (+.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3) (*.f64 (+.f64 (*.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2)))) (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2))))))))) (pow.f64 lambda1 3)))))
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 3)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 3)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 3)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 3)
(pow.f64 (sin.f64 lambda1) 3)
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (*.f64 lambda2 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))) (*.f64 -2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))))))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3)) (+.f64 (*.f64 2 (*.f64 (sin.f64 lambda1) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (sin.f64 lambda1)))) (pow.f64 lambda2 2)) (*.f64 lambda2 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))) (*.f64 -2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1)))))))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3)) (+.f64 (*.f64 2 (*.f64 (sin.f64 lambda1) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (sin.f64 lambda1)))) (pow.f64 lambda2 2)) (+.f64 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))) (+.f64 (*.f64 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 1/3 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (sin.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (cos.f64 lambda1))) (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1)))))) (*.f64 lambda2 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))) (*.f64 -2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))))))))
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 3)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 3)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 3)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 3)
Outputs
(sin.f64 (neg.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))) (sin.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (sin.f64 lambda2)))
(+.f64 (-.f64 (*.f64 lambda1 (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))
(-.f64 (fma.f64 (*.f64 (*.f64 -1/2 lambda2) lambda2) (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))))
(+.f64 (fma.f64 (*.f64 (*.f64 -1/2 lambda2) lambda2) (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (sin.f64 lambda1))) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(pow.f64 (sin.f64 (neg.f64 lambda2)) 3)
(pow.f64 (neg.f64 (sin.f64 lambda2)) 3)
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))))) lambda1) (pow.f64 (sin.f64 (neg.f64 lambda2)) 3))
(fma.f64 (*.f64 3 (*.f64 (cos.f64 lambda2) (pow.f64 (neg.f64 (sin.f64 lambda2)) 2))) lambda1 (pow.f64 (neg.f64 (sin.f64 lambda2)) 3))
(fma.f64 lambda1 (*.f64 3 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (pow.f64 (neg.f64 (sin.f64 lambda2)) 3))
(-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 3 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (pow.f64 (sin.f64 lambda2) 3))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))))) lambda1) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))))) (pow.f64 lambda1 2)) (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)))
(fma.f64 (*.f64 3 (*.f64 (cos.f64 lambda2) (pow.f64 (neg.f64 (sin.f64 lambda2)) 2))) lambda1 (fma.f64 (fma.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 lambda2) 2)) (fma.f64 -1/2 (pow.f64 (neg.f64 (sin.f64 lambda2)) 3) (*.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2))))) (*.f64 lambda1 lambda1) (pow.f64 (neg.f64 (sin.f64 lambda2)) 3)))
(fma.f64 lambda1 (*.f64 3 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 lambda2) 2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (*.f64 -1/2 (pow.f64 (neg.f64 (sin.f64 lambda2)) 3)))) (pow.f64 (neg.f64 (sin.f64 lambda2)) 3)))
(-.f64 (*.f64 lambda1 (+.f64 (*.f64 (cos.f64 lambda2) (*.f64 3 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 lambda1 (fma.f64 (*.f64 -2 (sin.f64 lambda2)) (pow.f64 (cos.f64 lambda2) 2) (-.f64 (*.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 3) -3/2) (*.f64 (pow.f64 (cos.f64 lambda2) 2) (sin.f64 lambda2))))))) (pow.f64 (sin.f64 lambda2) 3))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))) (*.f64 2 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2))))) lambda1) (+.f64 (*.f64 (+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))) (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))))) (pow.f64 lambda1 2)) (+.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3) (*.f64 (+.f64 (*.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2)) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2))) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (cos.f64 (neg.f64 lambda2)))) (*.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2)))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 (neg.f64 lambda2))))))))) (pow.f64 lambda1 3)))))
(fma.f64 (*.f64 3 (*.f64 (cos.f64 lambda2) (pow.f64 (neg.f64 (sin.f64 lambda2)) 2))) lambda1 (+.f64 (fma.f64 (fma.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 lambda2) 2)) (fma.f64 -1/2 (pow.f64 (neg.f64 (sin.f64 lambda2)) 3) (*.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2))))) (*.f64 lambda1 lambda1) (pow.f64 (neg.f64 (sin.f64 lambda2)) 3)) (*.f64 (pow.f64 lambda1 3) (fma.f64 (cos.f64 lambda2) (fma.f64 -1 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2)) (fma.f64 -1 (*.f64 (cos.f64 lambda2) (pow.f64 (neg.f64 (sin.f64 lambda2)) 2)) (fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 (neg.f64 (sin.f64 lambda2)) 2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 lambda2)) -4/3))))))))
(fma.f64 lambda1 (*.f64 3 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 lambda2) 2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (*.f64 -1/2 (pow.f64 (neg.f64 (sin.f64 lambda2)) 3)))) (fma.f64 (pow.f64 lambda1 3) (fma.f64 (cos.f64 lambda2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) -4/3) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) -7/6))) (pow.f64 (neg.f64 (sin.f64 lambda2)) 3))))
(fma.f64 lambda1 (*.f64 (cos.f64 lambda2) (*.f64 3 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (-.f64 (*.f64 (*.f64 lambda1 lambda1) (+.f64 (fma.f64 (*.f64 -2 (sin.f64 lambda2)) (pow.f64 (cos.f64 lambda2) 2) (-.f64 (*.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 3) -3/2) (*.f64 (pow.f64 (cos.f64 lambda2) 2) (sin.f64 lambda2)))) (*.f64 lambda1 (fma.f64 (cos.f64 lambda2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))) -5/2))))) (pow.f64 (sin.f64 lambda2) 3)))
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 3)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 3)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 3)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 3)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 3)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 3)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
(pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 3)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 3)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
(pow.f64 (sin.f64 lambda1) 3)
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (*.f64 lambda2 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))) (*.f64 -2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))))))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2)) -3)))
(fma.f64 lambda2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) -3)) (pow.f64 (sin.f64 lambda1) 3))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3)) (+.f64 (*.f64 2 (*.f64 (sin.f64 lambda1) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (sin.f64 lambda1)))) (pow.f64 lambda2 2)) (*.f64 lambda2 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))) (*.f64 -2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1)))))))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (fma.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3) (fma.f64 2 (*.f64 (sin.f64 lambda1) (pow.f64 (cos.f64 lambda1) 2)) (*.f64 (sin.f64 lambda1) (fma.f64 -1 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (cos.f64 lambda1) 2))))) (*.f64 lambda2 lambda2) (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2)) -3))))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3) (fma.f64 (sin.f64 lambda1) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (sin.f64 lambda1) (*.f64 (pow.f64 (cos.f64 lambda1) 2) 2)))) (*.f64 lambda2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) -3)))))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (*.f64 lambda2 (+.f64 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) -3)) (*.f64 lambda2 (fma.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 2 (pow.f64 (cos.f64 lambda1) 2)) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)))))))))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3)) (+.f64 (*.f64 2 (*.f64 (sin.f64 lambda1) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (sin.f64 lambda1)))) (pow.f64 lambda2 2)) (+.f64 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))) (+.f64 (*.f64 (+.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 1/3 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (sin.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)) (pow.f64 (cos.f64 lambda1) 2)) (cos.f64 lambda1))) (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1)))))) (*.f64 lambda2 (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))) (*.f64 -2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (cos.f64 lambda1))))))))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (fma.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3) (fma.f64 2 (*.f64 (sin.f64 lambda1) (pow.f64 (cos.f64 lambda1) 2)) (*.f64 (sin.f64 lambda1) (fma.f64 -1 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (cos.f64 lambda1) 2))))) (*.f64 lambda2 lambda2) (fma.f64 (pow.f64 lambda2 3) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2)) (fma.f64 (*.f64 4/3 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))) (sin.f64 lambda1) (fma.f64 -1 (*.f64 (cos.f64 lambda1) (fma.f64 -1 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2))))) (*.f64 lambda2 (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2)) -3)))))
(+.f64 (pow.f64 (sin.f64 lambda1) 3) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3) (fma.f64 (sin.f64 lambda1) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (sin.f64 lambda1) (*.f64 (pow.f64 (cos.f64 lambda1) 2) 2)))) (fma.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))) (pow.f64 (sin.f64 lambda1) 2))) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 4/3 (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2))))) (*.f64 lambda2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) -3))))))
(+.f64 (fma.f64 lambda2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) -3)) (pow.f64 (sin.f64 lambda1) 3)) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 2 (pow.f64 (cos.f64 lambda1) 2)) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))))) (*.f64 lambda2 (+.f64 (*.f64 (cos.f64 lambda1) (-.f64 (pow.f64 (sin.f64 lambda1) 2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)))) (*.f64 (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2)) 3/2))))))
(+.f64 (fma.f64 lambda2 (*.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) -3)) (pow.f64 (sin.f64 lambda1) 3)) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (fma.f64 -1/2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 2 (pow.f64 (cos.f64 lambda1) 2)) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))))) (*.f64 lambda2 (+.f64 (-.f64 (*.f64 7/3 (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2))) (pow.f64 (cos.f64 lambda1) 3)) (*.f64 7/6 (*.f64 (cos.f64 lambda1) (pow.f64 (sin.f64 lambda1) 2))))))))
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 3)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 3)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 3)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 3)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 3)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 3)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
(pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 3)
(pow.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) 3)
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)

localize52.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
0.3b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.5b
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 177 to 26 computations (85.3% saved)

series201.0ms (0.3%)

Counts
3 → 96
Calls

24 calls:

TimeVariablePointExpression
54.0ms
lambda2
@inf
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
43.0ms
lambda1
@inf
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
22.0ms
lambda2
@-inf
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
21.0ms
phi1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
20.0ms
lambda1
@-inf
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))

rewrite88.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
403×fma-def_binary64
354×expm1-udef_binary64
354×log1p-udef_binary64
333×pow3_binary64
324×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01954
137930
2486530
Stop Event
node limit
Counts
3 → 112
Calls
Call 1
Inputs
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 1/2 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 (neg.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 (neg.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 (*.f64 -1 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 (*.f64 -1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 lambda2 lambda2))) (cbrt.f64 lambda2)))) (*.f64 (sin.f64 lambda1) (sin.f64 (*.f64 (neg.f64 (cbrt.f64 (*.f64 lambda2 lambda2))) (cbrt.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 (*.f64 (neg.f64 (sqrt.f64 lambda2)) (sqrt.f64 lambda2)))) (*.f64 (sin.f64 lambda1) (sin.f64 (*.f64 (neg.f64 (sqrt.f64 lambda2)) (sqrt.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 lambda2) 1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (cbrt.f64 (*.f64 lambda2 lambda2)) lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (cbrt.f64 (*.f64 lambda2 lambda2)) lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 (sqrt.f64 lambda2)) (sqrt.f64 lambda2) lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 (sqrt.f64 lambda2)) (sqrt.f64 lambda2) lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 2 (*.f64 1/2 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 2 (*.f64 2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (-.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (-.f64 lambda1 lambda2))))) (#(struct:change #<rule egg-rr> (2) ((x cos.f64 (-.f64 lambda2 lambda1))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (-.f64 lambda1 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 lambda2) 2)) (*.f64 (cbrt.f64 (cos.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 lambda1)) 2) (*.f64 (cbrt.f64 (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 lambda1)) 2) (*.f64 (cbrt.f64 (cos.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 lambda2)) 2) (*.f64 (cbrt.f64 (sin.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 lambda2)) (*.f64 (sqrt.f64 (cos.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 lambda1)) (*.f64 (sqrt.f64 (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 lambda1)) (*.f64 (sqrt.f64 (cos.f64 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 lambda2)) (*.f64 (sqrt.f64 (sin.f64 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cbrt.f64 (pow.f64 (cos.f64 lambda2) 2))) (cbrt.f64 (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (sqrt.f64 (cos.f64 lambda2))) (sqrt.f64 (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (pow.f64 (cbrt.f64 (cos.f64 lambda1)) 2)) (cbrt.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (sqrt.f64 (cos.f64 lambda1))) (sqrt.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda1) (pow.f64 (cbrt.f64 (sin.f64 lambda2)) 2)) (cbrt.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda1) (sqrt.f64 (sin.f64 lambda2))) (sqrt.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda2) (pow.f64 (cbrt.f64 (sin.f64 lambda1)) 2)) (cbrt.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda2) (sqrt.f64 (sin.f64 lambda1))) (sqrt.f64 (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 1/3 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 1/3 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (/.f64 (cos.f64 (+.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 lambda1) 3) (pow.f64 (sin.f64 lambda2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 lambda2) 3) (pow.f64 (sin.f64 lambda1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))

simplify124.0ms (0.2%)

Algorithm
egg-herbie
Rules
752×distribute-lft-in_binary64
752×distribute-rgt-in_binary64
281×associate-*r*_binary64
267×associate-+l+_binary64
247×fma-def_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
02083573
16783086
225322800
369812800
Stop Event
node limit
Counts
208 → 181
Calls
Call 1
Inputs
(cos.f64 lambda2)
(+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda2) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2)))) (exp.f64 (cos.f64 lambda2))))) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 2 (pow.f64 (sin.f64 lambda2) 3)) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 1/6 (pow.f64 (sin.f64 lambda2) 3)) (*.f64 -1/6 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2)))) (*.f64 -6 (/.f64 (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2))))) (exp.f64 (cos.f64 lambda2)))))) (pow.f64 lambda1 3))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda2) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2)))) (exp.f64 (cos.f64 lambda2))))) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(cos.f64 lambda1)
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1)))) (exp.f64 (cos.f64 lambda1)))) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2))))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1)))) (exp.f64 (cos.f64 lambda1)))) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2))))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3))))) (exp.f64 (cos.f64 lambda1)))) (+.f64 (*.f64 -6 (/.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1)))) (*.f64 2 (pow.f64 (sin.f64 lambda1) 3)))))) (cos.f64 lambda1))))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 lambda2) lambda1)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (*.f64 (sin.f64 lambda2) lambda1))))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 lambda2 (sin.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (sin.f64 lambda1))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (sin.f64 lambda1))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (sin.f64 lambda1))))))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1)))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1)))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1))
(+.f64 (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 2)))))
(+.f64 (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 4)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 2))))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 6)))) (+.f64 (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 4)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 2)))))))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda2) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2)))) (exp.f64 (cos.f64 lambda2))))) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 2 (pow.f64 (sin.f64 lambda2) 3)) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 1/6 (pow.f64 (sin.f64 lambda2) 3)) (*.f64 -1/6 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2)))) (*.f64 -6 (/.f64 (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2))))) (exp.f64 (cos.f64 lambda2)))))) (pow.f64 lambda1 3))))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda2) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2)))) (exp.f64 (cos.f64 lambda2))))) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1)))) (exp.f64 (cos.f64 lambda1)))) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3))))) (exp.f64 (cos.f64 lambda1)))) (+.f64 (*.f64 -6 (/.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1)))) (*.f64 2 (pow.f64 (sin.f64 lambda1) 3)))))))) (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1)))) (exp.f64 (cos.f64 lambda1)))) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2))))))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
Outputs
(cos.f64 lambda2)
(+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))
(fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))
(+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda2) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2)))) (exp.f64 (cos.f64 lambda2))))) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(fma.f64 1/2 (*.f64 (fma.f64 -1 (pow.f64 (sin.f64 lambda2) 2) (*.f64 2 (/.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2))))) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(fma.f64 (*.f64 1/2 (-.f64 (*.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2)))) (pow.f64 (sin.f64 lambda2) 2))) (*.f64 lambda1 lambda1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(fma.f64 1/2 (*.f64 (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 1/2 (pow.f64 (sin.f64 lambda2) 2))))) (pow.f64 (sin.f64 lambda2) 2)) (*.f64 lambda1 lambda1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(+.f64 (*.f64 1/6 (*.f64 (+.f64 (*.f64 2 (pow.f64 (sin.f64 lambda2) 3)) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 1/6 (pow.f64 (sin.f64 lambda2) 3)) (*.f64 -1/6 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2)))) (*.f64 -6 (/.f64 (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2))))) (exp.f64 (cos.f64 lambda2)))))) (pow.f64 lambda1 3))) (+.f64 (*.f64 1/2 (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda2) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2)))) (exp.f64 (cos.f64 lambda2))))) (pow.f64 lambda1 2))) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 1/6 (*.f64 (fma.f64 2 (pow.f64 (sin.f64 lambda2) 3) (fma.f64 6 (/.f64 (fma.f64 (exp.f64 (cos.f64 lambda2)) (fma.f64 1/6 (pow.f64 (sin.f64 lambda2) 3) (*.f64 (sin.f64 lambda2) -1/6)) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda2))))) (exp.f64 (cos.f64 lambda2))) (*.f64 -6 (/.f64 (sin.f64 lambda2) (/.f64 (exp.f64 (cos.f64 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2)))))))))) (pow.f64 lambda1 3)) (fma.f64 1/2 (*.f64 (fma.f64 -1 (pow.f64 (sin.f64 lambda2) 2) (*.f64 2 (/.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2))))) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 (*.f64 1/6 (fma.f64 2 (pow.f64 (sin.f64 lambda2) 3) (fma.f64 6 (/.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (exp.f64 (cos.f64 lambda2)))) (*.f64 (exp.f64 (cos.f64 lambda2)) (fma.f64 1/6 (pow.f64 (sin.f64 lambda2) 3) (*.f64 (sin.f64 lambda2) -1/6)))) (exp.f64 (cos.f64 lambda2))) (*.f64 -6 (*.f64 (/.f64 (sin.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (exp.f64 (cos.f64 lambda2)))))))))) (pow.f64 lambda1 3) (fma.f64 (*.f64 1/2 (-.f64 (*.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2)))) (pow.f64 (sin.f64 lambda2) 2))) (*.f64 lambda1 lambda1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(fma.f64 1/6 (*.f64 (fma.f64 2 (pow.f64 (sin.f64 lambda2) 3) (fma.f64 -6 (*.f64 (/.f64 (sin.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 1/2 (pow.f64 (sin.f64 lambda2) 2))))) (*.f64 (/.f64 6 (exp.f64 (cos.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (fma.f64 1/6 (pow.f64 (sin.f64 lambda2) 3) (*.f64 (sin.f64 lambda2) -1/6)) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (sin.f64 lambda2)))))))) (pow.f64 lambda1 3)) (fma.f64 1/2 (*.f64 (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 1/2 (pow.f64 (sin.f64 lambda2) 2))))) (pow.f64 (sin.f64 lambda2) 2)) (*.f64 lambda1 lambda1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(cos.f64 lambda1)
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))
(fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1)))) (exp.f64 (cos.f64 lambda1)))) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2))))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))
(fma.f64 1/2 (*.f64 (*.f64 lambda2 lambda2) (fma.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1))) (neg.f64 (pow.f64 (sin.f64 lambda1) 2)))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (*.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1)))) (pow.f64 (sin.f64 lambda1) 2)))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (pow.f64 (sin.f64 lambda1) 2)))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1)))) (exp.f64 (cos.f64 lambda1)))) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2))))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3))))) (exp.f64 (cos.f64 lambda1)))) (+.f64 (*.f64 -6 (/.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1)))) (*.f64 2 (pow.f64 (sin.f64 lambda1) 3)))))) (cos.f64 lambda1))))
(fma.f64 1/2 (*.f64 (*.f64 lambda2 lambda2) (fma.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1))) (neg.f64 (pow.f64 (sin.f64 lambda1) 2)))) (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (fma.f64 6 (/.f64 (fma.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 -1/6 (sin.f64 lambda1) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3))))) (exp.f64 (cos.f64 lambda1))) (fma.f64 -6 (/.f64 (sin.f64 lambda1) (/.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))))) (*.f64 2 (pow.f64 (sin.f64 lambda1) 3))))) (cos.f64 lambda1))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (*.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1)))) (pow.f64 (sin.f64 lambda1) 2)))) (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (fma.f64 6 (/.f64 (fma.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 1/6 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -1/6 (sin.f64 lambda1))))) (exp.f64 (cos.f64 lambda1))) (fma.f64 2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -6 (*.f64 (/.f64 (sin.f64 lambda1) (exp.f64 (cos.f64 lambda1))) (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1)))))))))) (cos.f64 lambda1))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (pow.f64 (sin.f64 lambda1) 2)))) (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (fma.f64 6 (/.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (sin.f64 lambda1))) (fma.f64 1/6 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -1/6 (sin.f64 lambda1))))) (exp.f64 (cos.f64 lambda1))) (fma.f64 2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 (/.f64 -6 (exp.f64 (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))))))) (cos.f64 lambda1))))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda2) lambda1)
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (sin.f64 lambda2) lambda1))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 (sin.f64 lambda2) lambda1))
(fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (sin.f64 lambda2) (*.f64 -1/6 (pow.f64 lambda1 3))))
(*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (*.f64 (sin.f64 lambda2) lambda1)))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5)) (*.f64 (sin.f64 lambda2) lambda1)))
(fma.f64 (*.f64 (sin.f64 lambda2) -1/6) (pow.f64 lambda1 3) (fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 5) 1/120))))
(fma.f64 (*.f64 (sin.f64 lambda2) -1/6) (pow.f64 lambda1 3) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 (pow.f64 lambda1 5) 1/120))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7))) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 -1/5040 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7)) (fma.f64 1/120 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5)) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 -1/5040 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7)) (fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 5) 1/120)))))
(+.f64 (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 lambda2 (sin.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))))
(fma.f64 lambda2 (sin.f64 lambda1) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3))))
(*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (sin.f64 lambda1))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1)))))
(fma.f64 1/120 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 5)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)))))
(fma.f64 1/120 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 5)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/120 (pow.f64 lambda2 5)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (sin.f64 lambda1))) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (sin.f64 lambda1))))))
(fma.f64 1/120 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 5)) (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (*.f64 -1/5040 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 7))))))
(+.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) (*.f64 -1/5040 (pow.f64 lambda2 7)))) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/120 (pow.f64 lambda2 5)) lambda2)))
(*.f64 (sin.f64 lambda1) (+.f64 (+.f64 (*.f64 -1/5040 (pow.f64 lambda2 7)) (*.f64 -1/6 (pow.f64 lambda2 3))) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda2) (sin.f64 lambda1))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi1 (cos.f64 phi2)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1)))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi1 3))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi1 (cos.f64 phi2))))
(*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1))))
(fma.f64 1/120 (*.f64 (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)) (pow.f64 phi1 5)) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi1 (cos.f64 phi2))) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1)))))
(fma.f64 -1/5040 (*.f64 (*.f64 (pow.f64 phi1 7) (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (cos.f64 phi2)) (fma.f64 1/120 (*.f64 (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)) (pow.f64 phi1 5)) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) phi1)))))
(+.f64 (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi1 3))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi1 (cos.f64 phi2)))) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(fma.f64 -1/5040 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (pow.f64 phi1 7))) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (cos.f64 phi2)) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1))
(*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(+.f64 (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 2)))))
(fma.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 phi2 phi2)))))
(fma.f64 -1/2 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 -1/2 (sin.f64 phi1)) (*.f64 phi2 phi2))))
(+.f64 (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 4)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 2))))))
(fma.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1) (fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 phi2 phi2))))))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4)) 1/24))))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)) (+.f64 (*.f64 (*.f64 phi2 phi2) -1/2) (*.f64 (pow.f64 phi2 4) 1/24))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 6)))) (+.f64 (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 4)))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 2)))))))
(fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 6))) (fma.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1) (fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi2 4))) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 phi2 phi2)))))))
(fma.f64 -1/720 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (fma.f64 -1/2 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 phi2 phi2) (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4)) 1/24)))))
(+.f64 (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)) (+.f64 (*.f64 (*.f64 phi2 phi2) -1/2) (*.f64 (pow.f64 phi2 4) 1/24))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 phi1) -1/720) (pow.f64 phi2 6)))))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 (sin.f64 lambda2) lambda1) (sin.f64 phi1)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda2) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2)))) (exp.f64 (cos.f64 lambda2))))) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 -1 (pow.f64 (sin.f64 lambda2) 2) (*.f64 2 (/.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2))))) (*.f64 lambda1 lambda1)) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 (sin.f64 lambda2) lambda1) (sin.f64 phi1)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
(fma.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2)))) (pow.f64 (sin.f64 lambda2) 2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 1/2 (*.f64 (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 1/2 (pow.f64 (sin.f64 lambda2) 2))))) (pow.f64 (sin.f64 lambda2) 2)) (*.f64 lambda1 lambda1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 2 (pow.f64 (sin.f64 lambda2) 3)) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 1/6 (pow.f64 (sin.f64 lambda2) 3)) (*.f64 -1/6 (sin.f64 lambda2)))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2)))) (*.f64 -6 (/.f64 (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2))))) (exp.f64 (cos.f64 lambda2)))))) (pow.f64 lambda1 3))))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 -1 (pow.f64 (sin.f64 lambda2) 2)) (*.f64 2 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (pow.f64 (sin.f64 lambda2) 2)))) (exp.f64 (cos.f64 lambda2))))) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(fma.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (fma.f64 2 (pow.f64 (sin.f64 lambda2) 3) (fma.f64 6 (/.f64 (fma.f64 (exp.f64 (cos.f64 lambda2)) (fma.f64 1/6 (pow.f64 (sin.f64 lambda2) 3) (*.f64 (sin.f64 lambda2) -1/6)) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda2))))) (exp.f64 (cos.f64 lambda2))) (*.f64 -6 (/.f64 (sin.f64 lambda2) (/.f64 (exp.f64 (cos.f64 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2)))))))))) (pow.f64 lambda1 3)) (sin.f64 phi1))) (fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 -1 (pow.f64 (sin.f64 lambda2) 2) (*.f64 2 (/.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (*.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2))))) (*.f64 lambda1 lambda1)) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 (sin.f64 lambda2) lambda1) (sin.f64 phi1)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))
(fma.f64 1/6 (*.f64 (*.f64 (fma.f64 2 (pow.f64 (sin.f64 lambda2) 3) (fma.f64 6 (/.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (exp.f64 (cos.f64 lambda2)))) (*.f64 (exp.f64 (cos.f64 lambda2)) (fma.f64 1/6 (pow.f64 (sin.f64 lambda2) 3) (*.f64 (sin.f64 lambda2) -1/6)))) (exp.f64 (cos.f64 lambda2))) (*.f64 -6 (*.f64 (/.f64 (sin.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (exp.f64 (cos.f64 lambda2))))))))) (pow.f64 lambda1 3)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (fma.f64 1/2 (*.f64 (*.f64 (-.f64 (*.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2)))) (pow.f64 (sin.f64 lambda2) 2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))))
(fma.f64 1/6 (*.f64 (*.f64 (fma.f64 2 (pow.f64 (sin.f64 lambda2) 3) (fma.f64 -6 (*.f64 (/.f64 (sin.f64 lambda2) (exp.f64 (cos.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 1/2 (pow.f64 (sin.f64 lambda2) 2))))) (*.f64 (/.f64 6 (exp.f64 (cos.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (fma.f64 1/6 (pow.f64 (sin.f64 lambda2) 3) (*.f64 (sin.f64 lambda2) -1/6)) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (sin.f64 lambda2)))))))) (pow.f64 lambda1 3)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 1/2 (*.f64 (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda2))) (*.f64 (exp.f64 (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 1/2 (pow.f64 (sin.f64 lambda2) 2))))) (pow.f64 (sin.f64 lambda2) 2)) (*.f64 lambda1 lambda1)) (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1)))) (exp.f64 (cos.f64 lambda1)))) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2)))))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (fma.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2)) (*.f64 1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1))) (neg.f64 (pow.f64 (sin.f64 lambda1) 2))) (sin.f64 phi1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (fma.f64 1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (-.f64 (*.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1)))) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))) (*.f64 1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (pow.f64 (sin.f64 lambda1) 2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (pow.f64 (sin.f64 lambda1) 2)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 6 (/.f64 (+.f64 (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3))))) (exp.f64 (cos.f64 lambda1)))) (+.f64 (*.f64 -6 (/.f64 (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1)))) (*.f64 2 (pow.f64 (sin.f64 lambda1) 3)))))))) (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 2 (/.f64 (+.f64 (*.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (cos.f64 lambda1)))) (exp.f64 (cos.f64 lambda1)))) (*.f64 -1 (pow.f64 (sin.f64 lambda1) 2))))))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (fma.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 phi2)) (fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 6 (/.f64 (fma.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 -1/6 (sin.f64 lambda1) (*.f64 1/6 (pow.f64 (sin.f64 lambda1) 3))))) (exp.f64 (cos.f64 lambda1))) (fma.f64 -6 (/.f64 (sin.f64 lambda1) (/.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))))) (*.f64 2 (pow.f64 (sin.f64 lambda1) 3)))) (sin.f64 phi1)))) (*.f64 1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1))) (neg.f64 (pow.f64 (sin.f64 lambda1) 2))) (sin.f64 phi1))))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (fma.f64 1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (-.f64 (*.f64 2 (/.f64 (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))) (exp.f64 (cos.f64 lambda1)))) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 1/6 (*.f64 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (fma.f64 6 (/.f64 (fma.f64 -1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 1/6 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -1/6 (sin.f64 lambda1))))) (exp.f64 (cos.f64 lambda1))) (fma.f64 2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -6 (*.f64 (/.f64 (sin.f64 lambda1) (exp.f64 (cos.f64 lambda1))) (fma.f64 1/2 (*.f64 (exp.f64 (cos.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (exp.f64 (cos.f64 lambda1))))))))))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 1/2 (*.f64 lambda2 lambda2)) (*.f64 (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (pow.f64 (sin.f64 lambda1) 2)) (sin.f64 phi1))) (*.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (*.f64 (fma.f64 6 (/.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (sin.f64 lambda1))) (fma.f64 1/6 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -1/6 (sin.f64 lambda1))))) (exp.f64 (cos.f64 lambda1))) (fma.f64 2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 (/.f64 -6 (exp.f64 (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1)))))))) (sin.f64 phi1))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 1/2 (*.f64 lambda2 lambda2)) (*.f64 (-.f64 (*.f64 (/.f64 2 (exp.f64 (cos.f64 lambda1))) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1))))) (pow.f64 (sin.f64 lambda1) 2)) (sin.f64 phi1))) (*.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (*.f64 (fma.f64 6 (/.f64 (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (sin.f64 lambda1))) (fma.f64 1/6 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -1/6 (sin.f64 lambda1))))) (exp.f64 (cos.f64 lambda1))) (fma.f64 2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 (/.f64 -6 (exp.f64 (cos.f64 lambda1))) (*.f64 (sin.f64 lambda1) (*.f64 (exp.f64 (cos.f64 lambda1)) (+.f64 (*.f64 1/2 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -1/2 (cos.f64 lambda1)))))))) (sin.f64 phi1))))))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))

eval1.1s (1.9%)

Compiler

Compiled 50913 to 12863 computations (74.7% saved)

prune1.4s (2.5%)

Pruning

74 alts after pruning (74 fresh and 0 done)

PrunedKeptTotal
New1188671255
Fresh27734
Picked101
Done404
Total1220741294
Error
0.0b
Counts
1294 → 74
Alt Table
Click to see full alt table
StatusErrorProgram
20.1b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
36.5b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
0.3b
(atan2.f64 (*.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
20.0b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
7.8b
(atan2.f64 (*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3)) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
25.1b
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
54.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
0.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
0.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
24.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
0.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
18.3b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
24.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))))
18.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
12.4b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
11.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
12.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
25.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
17.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))
10.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
11.1b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.4b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
9.7b
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
34.4b
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
30.1b
(atan2.f64 (*.f64 (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
38.5b
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
26.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
30.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
43.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
30.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
12.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
12.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
20.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
17.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
31.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
23.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
19.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
31.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
19.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
38.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
26.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
26.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
19.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
22.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
23.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
30.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
31.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
25.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
19.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
20.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
32.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
32.2b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
36.6b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
33.9b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
37.5b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
19.8b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
40.0b
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
30.7b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
12.1b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
26.5b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
22.7b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
35.2b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
18.0b
(atan2.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
40.3b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
32.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
42.1b
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 5086 to 3220 computations (36.7% saved)

localize54.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 lambda2) (sin.f64 lambda1))
0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
0.3b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
Compiler

Compiled 168 to 24 computations (85.7% saved)

series13.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
3.0ms
phi2
@-inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
phi1
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
phi2
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
lambda2
@-inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
phi1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))

rewrite82.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
652×fma-def_binary64
357×fma-neg_binary64
329×expm1-udef_binary64
329×log1p-udef_binary64
275×log-pow_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01626
134516
2498616
Stop Event
node limit
Counts
1 → 78
Calls
Call 1
Inputs
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) 1) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3))) (*.f64 2 (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2))) (*.f64 2 (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) (*.f64 (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) (*.f64 (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) 3)) (fma.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (-.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3))) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2))) (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (exp.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 2) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)) 1 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))) (cbrt.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2))) (sqrt.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (*.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi1) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1)) (cos.f64 lambda2) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)) (cos.f64 lambda1) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 2)) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2))) (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (cos.f64 phi2) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2))) (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))

simplify169.0ms (0.3%)

Algorithm
egg-herbie
Rules
1360×distribute-lft-out_binary64
992×fma-def_binary64
648×unswap-sqr_binary64
491×*-commutative_binary64
429×distribute-rgt-in_binary64
Iterations

Useful iterations: 8 (0.0ms)

IterNodesCost
01031695
13511622
215551442
347811442
454211442
559241442
662671442
772951442
874261376
Stop Event
node limit
Counts
126 → 115
Calls
Call 1
Inputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
Outputs
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (cos.f64 phi2) phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) -1/6)))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 phi1 5)))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 phi1 (fma.f64 -1/6 (pow.f64 phi1 3) (*.f64 1/120 (pow.f64 phi1 5)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/5040 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 phi1 7)) (*.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (pow.f64 phi1 5))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 phi1 (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 phi1 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 1/120 (pow.f64 phi1 5) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) -1/2)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))))
(fma.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) -1/2))))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2)) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (sin.f64 phi1))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))))
(fma.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (fma.f64 -1/720 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi2 phi2)) (*.f64 (sin.f64 phi1) -1/2)))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2)))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720)))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (+.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (*.f64 (sin.f64 phi1) -1/2))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))) (*.f64 (pow.f64 phi2 6) (*.f64 (sin.f64 phi1) -1/720)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) -1/2)))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1))) (fma.f64 -1/6 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2)))) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (sin.f64 lambda2)) -1/6))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 lambda2 (sin.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) lambda2))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 lambda2 lambda2)) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 lambda2 (sin.f64 lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (cos.f64 lambda1) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 lambda2 lambda2)) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 lambda2 (sin.f64 lambda1))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (sin.f64 phi1))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1)))

localize29.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 68 to 14 computations (79.4% saved)

series14.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
3.0ms
phi2
@0
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
3.0ms
lambda1
@inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
phi2
@inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
phi1
@inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
1.0ms
lambda2
@inf
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))

rewrite110.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
778×log-prod_binary64
693×fma-def_binary64
357×fma-neg_binary64
293×expm1-udef_binary64
293×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01321
130021
2433821
Stop Event
node limit
Counts
1 → 174
Calls
Call 1
Inputs
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (cbrt.f64 (exp.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (log.f64 (cbrt.f64 (exp.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (log.f64 (sqrt.f64 (exp.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (/.f64 1 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)) (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))) (neg.f64 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (-.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (*.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 3) (pow.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 3)) (+.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (-.f64 (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (-.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1)) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (/.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (exp.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1)) (/.f64 1 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (/.f64 1 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (exp.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (exp.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (+.f64 1 (expm1.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (/.f64 1 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 phi1) (sin.f64 phi2) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 phi1) (sin.f64 phi2) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi2) (cos.f64 phi1) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi2) (cos.f64 phi1) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1 (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1 (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1 (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1 (+.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (+.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1)) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 phi1) 2)) (*.f64 (cbrt.f64 (cos.f64 phi1)) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 phi1) 2)) (*.f64 (cbrt.f64 (cos.f64 phi1)) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 phi1) 2)) (*.f64 (cbrt.f64 (cos.f64 phi1)) (sin.f64 phi2)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 phi1) 2)) (*.f64 (cbrt.f64 (cos.f64 phi1)) (sin.f64 phi2)) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (+.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2) (cbrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (+.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi2)) (*.f64 (sqrt.f64 (sin.f64 phi2)) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi2)) (*.f64 (sqrt.f64 (sin.f64 phi2)) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi2)) (*.f64 (sqrt.f64 (sin.f64 phi2)) (cos.f64 phi1)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi2)) (*.f64 (sqrt.f64 (sin.f64 phi2)) (cos.f64 phi1)) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 phi1)) (*.f64 (sqrt.f64 (cos.f64 phi1)) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 phi1)) (*.f64 (sqrt.f64 (cos.f64 phi1)) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 phi1)) (*.f64 (sqrt.f64 (cos.f64 phi1)) (sin.f64 phi2)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 phi1)) (*.f64 (sqrt.f64 (cos.f64 phi1)) (sin.f64 phi2)) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (+.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 phi1) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))) (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))) (+.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (/.f64 1 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (/.f64 1 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (/.f64 1 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (/.f64 1 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2)) (/.f64 1 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (+.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (cbrt.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (cbrt.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))) (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (*.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (-.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (+.f64 (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)) (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) 1) (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (neg.f64 (sin.f64 phi1)) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)) (cbrt.f64 (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)) (cbrt.f64 (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)) (cbrt.f64 (sin.f64 phi2)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)) (cbrt.f64 (sin.f64 phi2)) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (sqrt.f64 (sin.f64 phi2))) (sqrt.f64 (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (sqrt.f64 (sin.f64 phi2))) (sqrt.f64 (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (sqrt.f64 (sin.f64 phi2))) (sqrt.f64 (sin.f64 phi2)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi1) (sqrt.f64 (sin.f64 phi2))) (sqrt.f64 (sin.f64 phi2)) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi2) (cbrt.f64 (pow.f64 (cos.f64 phi1) 2))) (cbrt.f64 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi2) (cbrt.f64 (pow.f64 (cos.f64 phi1) 2))) (cbrt.f64 (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi2) (cbrt.f64 (pow.f64 (cos.f64 phi1) 2))) (cbrt.f64 (cos.f64 phi1)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi2) (cbrt.f64 (pow.f64 (cos.f64 phi1) 2))) (cbrt.f64 (cos.f64 phi1)) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1)) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1)) (neg.f64 (-.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))))))

simplify72.0ms (0.1%)

Algorithm
egg-herbie
Rules
731×fma-def_binary64
382×associate-*l*_binary64
339×associate-*r*_binary64
322×cancel-sign-sub-inv_binary64
278×associate-+l-_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01041193
13361180
29531122
336581098
Stop Event
node limit
Counts
222 → 209
Calls
Call 1
Inputs
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
Outputs
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2))
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 phi1) (sin.f64 phi2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2)))
(-.f64 (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))
(-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(fma.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3)) (fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2))))
(fma.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (-.f64 (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(fma.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 phi1 3)) phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(fma.f64 (cos.f64 phi1) phi2 (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))
(-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 phi2 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (fma.f64 (cos.f64 phi1) phi2 (neg.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(-.f64 (fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (*.f64 phi2 (cos.f64 phi1))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (fma.f64 (cos.f64 phi1) phi2 (fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (fma.f64 phi2 (cos.f64 phi1) (-.f64 (*.f64 (cos.f64 phi1) (*.f64 (pow.f64 phi2 5) 1/120)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))))
(fma.f64 phi2 (cos.f64 phi1) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 (*.f64 1/120 (pow.f64 phi2 5)) (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (+.f64 (*.f64 1/120 (pow.f64 phi2 5)) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3))))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(-.f64 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))) (cos.f64 lambda2))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)) (*.f64 (*.f64 1/2 (sin.f64 phi1)) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(-.f64 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) 1/2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (fma.f64 lambda1 (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (-.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (*.f64 lambda1 1/2))) (sin.f64 phi1)))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda1 (+.f64 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) 1/2) (neg.f64 (sin.f64 lambda2)))) (cos.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))))) (*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2))))
(-.f64 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)) (fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 -1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(-.f64 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)) (fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) 1/2))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda2))) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (-.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (*.f64 lambda1 1/2))) (sin.f64 phi1)))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/2 (*.f64 lambda1 lambda1)) -1)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (*.f64 (neg.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (*.f64 lambda2 (sin.f64 phi1)) (neg.f64 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (fma.f64 1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (neg.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (fma.f64 (*.f64 1/2 (*.f64 lambda2 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (*.f64 lambda2 (sin.f64 phi1)) (neg.f64 (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 lambda2 (sin.f64 lambda1))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (-.f64 (-.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 (cos.f64 phi1) (sin.f64 phi2) (fma.f64 1/2 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (fma.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (*.f64 1/6 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (pow.f64 lambda2 3)))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(-.f64 (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (sin.f64 phi1)))) (sin.f64 phi1)))))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)) (-.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1)))) (cos.f64 lambda1)))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))

localize33.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))
0.1b
(*.f64 lambda2 (cos.f64 lambda1))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 97 to 19 computations (80.4% saved)

series8.0ms (0%)

Counts
2 → 40
Calls

15 calls:

TimeVariablePointExpression
1.0ms
phi2
@0
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))
1.0ms
lambda2
@0
(*.f64 lambda2 (cos.f64 lambda1))
1.0ms
phi2
@inf
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))
1.0ms
lambda1
@inf
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))
1.0ms
lambda1
@-inf
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))

rewrite59.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
674×prod-diff_binary64
547×log-prod_binary64
360×pow-prod-down_binary64
288×pow2_binary64
228×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01022
120922
2279722
Stop Event
node limit
Counts
2 → 42
Calls
Call 1
Inputs
(*.f64 lambda2 (cos.f64 lambda1))
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 lambda2 (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 lambda2) (cos.f64 lambda1))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 lambda2) (cos.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 lambda2) (cos.f64 lambda1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 lambda2) (cos.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 lambda2 (cos.f64 lambda1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 lambda2 (cos.f64 lambda1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 lambda2 (cos.f64 lambda1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 lambda2) (cos.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 lambda2 (cos.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 lambda2 (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 lambda2 (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 lambda2 (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 lambda2 (cos.f64 lambda1))) 1))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (*.f64 (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 lambda1) 3) (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 3)) (cos.f64 phi2)) (fma.f64 (*.f64 lambda2 (cos.f64 lambda1)) (fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 2)) (cos.f64 phi2)) (fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (-.f64 (pow.f64 (sin.f64 lambda1) 3) (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 3))) (fma.f64 (*.f64 lambda2 (cos.f64 lambda1)) (fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1)) (pow.f64 (sin.f64 lambda1) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (cos.f64 phi2) (-.f64 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 2))) (fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (cos.f64 phi2) (*.f64 (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 phi2) (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1)))))))))

simplify65.0ms (0.1%)

Algorithm
egg-herbie
Rules
863×fma-neg_binary64
526×associate-+l+_binary64
522×*-commutative_binary64
393×fma-def_binary64
364×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
069766
1199741
2648697
32552664
46190664
Stop Event
node limit
Counts
82 → 71
Calls
Call 1
Inputs
lambda2
(+.f64 lambda2 (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2))))
(+.f64 lambda2 (+.f64 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4))) (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2)))))
(+.f64 (*.f64 -1/720 (*.f64 lambda2 (pow.f64 lambda1 6))) (+.f64 lambda2 (+.f64 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4))) (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2))))))
(*.f64 -1 (*.f64 (cos.f64 phi2) lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2)))))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi2 6) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))))))) (*.f64 lambda2 (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
Outputs
lambda2
(+.f64 lambda2 (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2))))
(+.f64 lambda2 (*.f64 -1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1))))
(fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) lambda2)
(fma.f64 lambda2 (*.f64 -1/2 (*.f64 lambda1 lambda1)) lambda2)
(+.f64 lambda2 (+.f64 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4))) (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2)))))
(+.f64 lambda2 (fma.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4)) (*.f64 -1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)))))
(+.f64 lambda2 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4)))))
(fma.f64 lambda2 (*.f64 1/24 (pow.f64 lambda1 4)) (fma.f64 lambda2 (*.f64 -1/2 (*.f64 lambda1 lambda1)) lambda2))
(fma.f64 lambda2 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (fma.f64 (pow.f64 lambda1 4) (*.f64 lambda2 1/24) lambda2))
(+.f64 (*.f64 -1/720 (*.f64 lambda2 (pow.f64 lambda1 6))) (+.f64 lambda2 (+.f64 (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4))) (*.f64 -1/2 (*.f64 lambda2 (pow.f64 lambda1 2))))))
(fma.f64 -1/720 (*.f64 lambda2 (pow.f64 lambda1 6)) (+.f64 lambda2 (fma.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4)) (*.f64 -1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1))))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) (*.f64 1/24 (*.f64 lambda2 (pow.f64 lambda1 4)))) (fma.f64 (*.f64 lambda2 -1/720) (pow.f64 lambda1 6) lambda2))
(fma.f64 lambda2 (*.f64 -1/720 (pow.f64 lambda1 6)) (fma.f64 lambda2 (*.f64 1/24 (pow.f64 lambda1 4)) (fma.f64 lambda2 (*.f64 -1/2 (*.f64 lambda1 lambda1)) lambda2)))
(+.f64 lambda2 (*.f64 lambda2 (+.f64 (*.f64 -1/720 (pow.f64 lambda1 6)) (+.f64 (*.f64 1/24 (pow.f64 lambda1 4)) (*.f64 -1/2 (*.f64 lambda1 lambda1))))))
(fma.f64 lambda2 (*.f64 -1/720 (pow.f64 lambda1 6)) (fma.f64 lambda2 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (fma.f64 (pow.f64 lambda1 4) (*.f64 lambda2 1/24) lambda2)))
(*.f64 -1 (*.f64 (cos.f64 phi2) lambda2))
(neg.f64 (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (neg.f64 lambda2))
(*.f64 lambda2 (neg.f64 (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)))
(fma.f64 (cos.f64 phi2) lambda1 (neg.f64 (*.f64 lambda2 (cos.f64 phi2))))
(-.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 1/2 (*.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) (cos.f64 phi2)))))
(fma.f64 lambda1 (cos.f64 phi2) (-.f64 (*.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 phi2) 1/2)) (*.f64 lambda2 (cos.f64 phi2))))
(fma.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 phi2) 1/2) (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2)))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1 (*.f64 lambda2 (cos.f64 phi2)) (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (*.f64 1/2 (*.f64 (*.f64 lambda2 (*.f64 lambda1 lambda1)) (cos.f64 phi2))))))
(fma.f64 lambda1 (cos.f64 phi2) (-.f64 (fma.f64 1/2 (*.f64 lambda2 (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) -1/6))) (*.f64 lambda2 (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 1/2)) (*.f64 -1/6 (pow.f64 lambda1 3)))))
(*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 lambda1 -1/6) (*.f64 lambda2 1/2)))))
(*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 lambda2 1/2) (*.f64 lambda1 -1/6)))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(neg.f64 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 lambda2 (neg.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))))
(*.f64 lambda2 (*.f64 (cos.f64 lambda1) (neg.f64 (cos.f64 phi2))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(neg.f64 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 lambda2 (neg.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))))
(*.f64 lambda2 (*.f64 (cos.f64 lambda1) (neg.f64 (cos.f64 phi2))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (*.f64 phi2 phi2)) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)) (fma.f64 (*.f64 -1/2 phi2) phi2 1))
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (*.f64 phi2 phi2)) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (pow.f64 phi2 4))))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (pow.f64 phi2 4)) (sin.f64 lambda1))) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)) (*.f64 (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 phi2)))))
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (*.f64 1/24 (pow.f64 phi2 4))))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi2 6) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (pow.f64 phi2 4) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))))))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (*.f64 phi2 phi2)) (fma.f64 -1/720 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (pow.f64 phi2 6)) (+.f64 (sin.f64 lambda1) (*.f64 1/24 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (pow.f64 phi2 4)))))) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (+.f64 (fma.f64 1/24 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (pow.f64 phi2 4)) (sin.f64 lambda1)) (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 -1/720 (pow.f64 phi2 6))))) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)) (+.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 -1/720 (pow.f64 phi2 6))) (*.f64 1/24 (pow.f64 phi2 4)))) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))) (fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda1)))

localize53.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
0.1b
(-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 145 to 51 computations (64.8% saved)

series5.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
1.0ms
lambda2
@inf
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
1.0ms
lambda2
@-inf
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
1.0ms
lambda1
@0
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
1.0ms
lambda1
@inf
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
1.0ms
lambda1
@-inf
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))

rewrite59.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
568×log-prod_binary64
408×pow-prod-down_binary64
320×fma-def_binary64
290×pow2_binary64
203×pow1/3_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01017
121615
2298715
Stop Event
node limit
Counts
1 → 61
Calls
Call 1
Inputs
(*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) 1) (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 lambda1) (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 lambda1) (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 lambda1) (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 lambda1) (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 lambda1 (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)) 3)) (+.f64 (pow.f64 (*.f64 lambda1 (cos.f64 lambda2)) 2) (-.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)) 2) (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 lambda1 (cos.f64 lambda2)) 2) (pow.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)) 2)) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3) 1/8 (pow.f64 (cos.f64 lambda2) 3)) lambda1) (fma.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) (-.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) (cos.f64 lambda2)) (pow.f64 (cos.f64 lambda2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) 2)) lambda1) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 lambda1 (fma.f64 (pow.f64 (*.f64 lambda1 (sin.f64 lambda2)) 3) 1/8 (pow.f64 (cos.f64 lambda2) 3))) (fma.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) (-.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) (cos.f64 lambda2)) (pow.f64 (cos.f64 lambda2) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 lambda1 (-.f64 (pow.f64 (cos.f64 lambda2) 2) (pow.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) 2))) (-.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 lambda1) (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 3 (log.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))) 1/3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cbrt.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (sqrt.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (*.f64 (log.f64 (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2)))) 1) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 lambda1 (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 lambda1 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) lambda1 (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 lambda1 (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) 2)) (*.f64 (cbrt.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))) lambda1) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 lambda1 lambda1)) (*.f64 (cbrt.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 lambda1 lambda1)) (*.f64 (cbrt.f64 lambda1) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (*.f64 (cbrt.f64 (cos.f64 lambda2)) lambda1) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))) (*.f64 (sqrt.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))) lambda1) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 lambda1) (*.f64 (sqrt.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 lambda1) (*.f64 (sqrt.f64 lambda1) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 lambda2)) (*.f64 (sqrt.f64 (cos.f64 lambda2)) lambda1) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 lambda1 (cos.f64 lambda2)) 1 (*.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 1/2 lambda1) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 lambda1 (cos.f64 lambda2))) 2) (cbrt.f64 (*.f64 lambda1 (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1))) 2) (cbrt.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1))) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 lambda1 (cos.f64 lambda2))) (sqrt.f64 (*.f64 lambda1 (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1))) (sqrt.f64 (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1))) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 lambda1 (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2)) (cbrt.f64 (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 lambda1 (sqrt.f64 (cos.f64 lambda2))) (sqrt.f64 (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (cbrt.f64 (*.f64 lambda1 lambda1))) (cbrt.f64 lambda1) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (sqrt.f64 lambda1)) (sqrt.f64 lambda1) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) (*.f64 lambda1 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 lambda1 (cbrt.f64 (pow.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) 2))) (cbrt.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 lambda1 (sqrt.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sqrt.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2))) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 lambda2))) 1/2 (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) (cbrt.f64 (*.f64 lambda1 lambda1))) (cbrt.f64 lambda1) (*.f64 lambda1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) (sqrt.f64 lambda1)) (sqrt.f64 lambda1) (*.f64 lambda1 (cos.f64 lambda2)))))))

simplify149.0ms (0.3%)

Algorithm
egg-herbie
Rules
691×associate-*l*_binary64
586×distribute-rgt-out_binary64
556×fma-def_binary64
527×associate-*r*_binary64
520×distribute-lft-out_binary64
Iterations

Useful iterations: 5 (0.0ms)

IterNodesCost
030403
180352
2210352
3689344
43424343
55058342
66374342
76684342
86870342
97091342
107363342
117703342
Stop Event
node limit
Counts
85 → 74
Calls
Call 1
Inputs
(*.f64 (cos.f64 lambda2) lambda1)
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
lambda1
(+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1))
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) (pow.f64 lambda1 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
Outputs
(*.f64 (cos.f64 lambda2) lambda1)
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)))
(*.f64 1/2 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 lambda2))))
(*.f64 lambda1 (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)))
(*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)))
(*.f64 1/2 (*.f64 lambda1 (*.f64 lambda1 (sin.f64 lambda2))))
(*.f64 lambda1 (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2))))
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
lambda1
(+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1)
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) lambda1)
(fma.f64 1/2 (*.f64 (*.f64 lambda2 lambda1) lambda1) lambda1)
(fma.f64 1/2 (*.f64 lambda1 (*.f64 lambda2 lambda1)) lambda1)
(fma.f64 lambda2 (*.f64 1/2 (*.f64 lambda1 lambda1)) lambda1)
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 lambda2 1/2) 1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1))
(fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda2 lambda2)) (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) lambda1))
(fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 lambda1)) (fma.f64 1/2 (*.f64 (*.f64 lambda2 lambda1) lambda1) lambda1))
(fma.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)) (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 lambda1)) lambda1))
(fma.f64 lambda1 (*.f64 lambda2 (+.f64 (*.f64 lambda1 1/2) (*.f64 lambda2 -1/2))) lambda1)
(+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) (pow.f64 lambda1 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) lambda1)) (+.f64 (*.f64 1/2 (*.f64 lambda2 (pow.f64 lambda1 2))) lambda1)))
(fma.f64 -1/12 (*.f64 (*.f64 lambda1 lambda1) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda2 lambda2)) (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda1 lambda1)) lambda1)))
(fma.f64 -1/12 (*.f64 lambda1 (*.f64 lambda1 (pow.f64 lambda2 3))) (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 lambda1)) (fma.f64 1/2 (*.f64 (*.f64 lambda2 lambda1) lambda1) lambda1)))
(fma.f64 lambda1 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/12 (pow.f64 lambda2 3)) (fma.f64 1/2 (*.f64 lambda1 (*.f64 lambda2 lambda1)) lambda1)))
(fma.f64 lambda1 (*.f64 lambda2 (+.f64 (*.f64 lambda1 1/2) (*.f64 lambda2 -1/2))) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 -1/12 (pow.f64 lambda2 3)) 1)))
(*.f64 lambda1 (+.f64 (fma.f64 lambda1 (*.f64 lambda2 1/2) 1) (*.f64 (*.f64 lambda2 lambda2) (+.f64 -1/2 (*.f64 lambda2 (*.f64 lambda1 -1/12))))))
(+.f64 lambda1 (*.f64 lambda1 (*.f64 lambda2 (+.f64 (*.f64 lambda2 -1/2) (*.f64 lambda1 (+.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 -1/12))))))))
(+.f64 lambda1 (*.f64 (*.f64 lambda2 lambda1) (+.f64 (*.f64 lambda2 -1/2) (*.f64 lambda1 (+.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 -1/12)))))))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2)) lambda1)
(fma.f64 (cos.f64 lambda2) lambda1 (*.f64 1/2 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1))))
(*.f64 lambda1 (fma.f64 1/2 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)) (cos.f64 lambda2)))

localize51.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.8b
(cos.f64 (+.f64 lambda1 lambda2))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 172 to 35 computations (79.7% saved)

series14.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
lambda1
@-inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
phi1
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
phi1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
lambda1
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
phi2
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))

rewrite91.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
516×fma-neg_binary64
409×expm1-udef_binary64
409×log1p-udef_binary64
230×add-sqr-sqrt_binary64
225×*-un-lft-identity_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01941
142441
2608441
Stop Event
node limit
Counts
2 → 59
Calls
Call 1
Inputs
(cos.f64 (+.f64 lambda1 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (cos.f64 (+.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (+.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (+.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (+.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 (+.f64 lambda1 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (+.f64 lambda1 lambda2))) 2) (cbrt.f64 (cos.f64 (+.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (+.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 (+.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2) (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (+.f64 lambda1 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (+.f64 lambda1 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (+.f64 lambda1 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (+.f64 lambda1 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (+.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (+.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (+.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (+.f64 lambda1 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (cos.f64 (+.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (+.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (+.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (+.f64 lambda1 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 1 (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 lambda1) 2)) (*.f64 (cbrt.f64 (cos.f64 lambda1)) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 2) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 2) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (cos.f64 lambda2) 2)) (*.f64 (cbrt.f64 (cos.f64 lambda2)) (cos.f64 lambda1)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 lambda1)) (*.f64 (sqrt.f64 (cos.f64 lambda1)) (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 lambda2)) (*.f64 (sqrt.f64 (cos.f64 lambda2)) (cos.f64 lambda1)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda1 lambda2))) 1/2 (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cbrt.f64 (pow.f64 (cos.f64 lambda2) 2))) (cbrt.f64 (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (sqrt.f64 (cos.f64 lambda2))) (sqrt.f64 (cos.f64 lambda2)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (cbrt.f64 (pow.f64 (cos.f64 lambda1) 2))) (cbrt.f64 (cos.f64 lambda1)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (sqrt.f64 (cos.f64 lambda1))) (sqrt.f64 (cos.f64 lambda1)) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 phi1)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) 1))))))

simplify85.0ms (0.1%)

Algorithm
egg-herbie
Rules
588×distribute-rgt-neg-out_binary64
492×distribute-lft-neg-out_binary64
377×distribute-rgt-in_binary64
375×distribute-lft-in_binary64
306×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01732569
15712405
221972145
353082136
Stop Event
node limit
Counts
131 → 113
Calls
Call 1
Inputs
(cos.f64 lambda2)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) lambda1)) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) lambda1)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(cos.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (+.f64 (cos.f64 lambda1) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))))))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2))) lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2))) lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))) (*.f64 (+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))) (*.f64 -1/2 (cos.f64 lambda2)))) (*.f64 -1/2 (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2))) lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))) (*.f64 -1/2 (cos.f64 lambda2)))) (*.f64 -1/2 (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (*.f64 -1/6 (sin.f64 lambda2)) (*.f64 -1/6 (sin.f64 (neg.f64 lambda2)))) (pow.f64 lambda1 3))))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1))))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1))))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1))))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1))))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1))))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1))))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1))))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 1/2 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 1/6 (sin.f64 lambda1))))))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))))))
Outputs
(cos.f64 lambda2)
(+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 lambda2))
(fma.f64 -1 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2))
(-.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) lambda1)) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))))
(+.f64 (fma.f64 -1 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))
(-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) -1/2) lambda1) (sin.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 lambda2) lambda1)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))))))
(fma.f64 -1 (*.f64 (sin.f64 lambda2) lambda1) (fma.f64 1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))))
(-.f64 (fma.f64 1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 (neg.f64 lambda1) (*.f64 1/6 (pow.f64 lambda1 3)))))
(fma.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1))
(fma.f64 -1 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))
(-.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (+.f64 (cos.f64 lambda1) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))))))
(fma.f64 -1 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)) (*.f64 1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)))))
(-.f64 (fma.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1))) (fma.f64 1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (cos.f64 lambda1))) (*.f64 lambda2 (sin.f64 lambda1)))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(fma.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(cos.f64 (+.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2)))
(cos.f64 (+.f64 lambda2 lambda1))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))) (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(fma.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (pow.f64 phi1 5)) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))
(fma.f64 -1/5040 (*.f64 (*.f64 (pow.f64 phi1 7) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (fma.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (pow.f64 phi1 5)) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))
(+.f64 (fma.f64 (cos.f64 phi2) (*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))) (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 1/120 (pow.f64 phi1 5)))))
(fma.f64 -1/5040 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (pow.f64 phi1 7))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1)))))) (+.f64 phi1 (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(fma.f64 -1/2 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (sin.f64 phi1)))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (+.f64 (sin.f64 phi1) (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 phi2 phi2))) (fma.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 4))))))
(fma.f64 -1/2 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (sin.f64 phi1) (*.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4))))))
(fma.f64 -1/2 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 phi1) 1/24) (pow.f64 phi2 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 6) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 2) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 phi2 4) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))))
(fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 phi2 phi2))) (fma.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi2 4)))))))
(fma.f64 -1/720 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (sin.f64 phi1) (*.f64 1/24 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 4)))))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 phi1) 1/24) (pow.f64 phi2 4)))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 -1/720 (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))
(*.f64 (+.f64 (cos.f64 lambda2) 0) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2))) lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))))
(fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2)))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))))
(fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) 0)) (*.f64 (*.f64 (+.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (*.f64 1/2 (sin.f64 phi1))))
(*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) (+.f64 lambda1 lambda1)) 1/2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2))) lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))) (*.f64 (+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))) (*.f64 -1/2 (cos.f64 lambda2)))) (*.f64 -1/2 (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2)))))) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (fma.f64 1/2 (*.f64 -1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) -1/2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 lambda1 lambda1)))))
(fma.f64 (*.f64 1/2 (sin.f64 phi1)) (*.f64 (+.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (fma.f64 (fma.f64 (cos.f64 lambda2) -1/2 0) (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (+.f64 (cos.f64 lambda2) 0) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 lambda2) (+.f64 lambda1 lambda1)) (sin.f64 phi1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2))) lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (-.f64 (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))) (*.f64 -1/2 (cos.f64 lambda2)))) (*.f64 -1/2 (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (-.f64 (*.f64 -1/6 (sin.f64 lambda2)) (*.f64 -1/6 (sin.f64 (neg.f64 lambda2)))) (pow.f64 lambda1 3))))))))
(fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2)))))) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))) (fma.f64 (fma.f64 1/2 (*.f64 -1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) -1/2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 lambda1 lambda1)) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (*.f64 -1/6 (-.f64 (sin.f64 lambda2) (sin.f64 (neg.f64 lambda2)))))))))))
(fma.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (sin.f64 phi1))) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) 0)) (fma.f64 1/2 (*.f64 (*.f64 (*.f64 (pow.f64 lambda1 3) -1/6) (+.f64 (sin.f64 lambda2) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 phi2))) (fma.f64 (cos.f64 lambda2) -1/2 0))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2))) (*.f64 (*.f64 1/2 (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (+.f64 (*.f64 (pow.f64 lambda1 3) (*.f64 (sin.f64 lambda2) -1/3)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1))))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1))))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1))))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1))))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1))))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(fma.f64 1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 2 (sin.f64 lambda1))) (*.f64 lambda2 (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 (*.f64 lambda2 1/2) (*.f64 2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1))))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda1)))))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(fma.f64 1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 2 (sin.f64 lambda1))) (*.f64 lambda2 (sin.f64 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (sin.f64 lambda1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1))))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 1/2 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (-.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 1/6 (sin.f64 lambda1))))))))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (neg.f64 (sin.f64 lambda1)))))) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 1/2 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) -1/3))))))))
(+.f64 (fma.f64 1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 2 (sin.f64 lambda1))) (*.f64 lambda2 (sin.f64 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (*.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda1) -1/3) (cos.f64 phi2)))) (pow.f64 lambda2 3)))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))) (*.f64 1/2 (+.f64 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda1) -1/3) (cos.f64 phi2)))) (*.f64 lambda2 (*.f64 2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (sin.f64 lambda1)))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda2 lambda1))))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))

eval1.4s (2.4%)

Compiler

Compiled 59852 to 12490 computations (79.1% saved)

prune1.2s (2.1%)

Pruning

102 alts after pruning (102 fresh and 0 done)

PrunedKeptTotal
New1417621479
Fresh294069
Picked101
Done404
Total14511021553
Error
0.0b
Counts
1553 → 102
Alt Table
Click to see full alt table
StatusErrorProgram
29.9b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
20.1b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
32.7b
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
36.5b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
33.0b
(atan2.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 2)) (cos.f64 phi2)) (fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
55.2b
(atan2.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
29.9b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
38.2b
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
20.0b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
0.3b
(atan2.f64 (*.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 3) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
25.1b
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
7.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
0.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
0.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
18.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
12.4b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
11.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
12.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
10.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
25.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
0.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
25.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
17.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) 2))))
1.3b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (exp.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))))
10.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
10.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
0.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
24.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
33.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/2 (*.f64 lambda1 lambda1)) -1))))))
30.3b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
30.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
38.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
39.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
39.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
11.1b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.3b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
30.3b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
37.5b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
30.0b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
3.5b
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
9.7b
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.9b
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
34.4b
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
26.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
30.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
16.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
12.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
20.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
17.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
31.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
19.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
19.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
19.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
18.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
22.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
23.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
31.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
25.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
32.1b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
36.6b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
37.5b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
19.8b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
40.0b
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
41.5b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
41.1b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
12.1b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
22.7b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
35.2b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
18.0b
(atan2.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
46.7b
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
40.3b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
45.8b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
32.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
49.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
44.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
37.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
38.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
35.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
36.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
39.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
40.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
32.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
45.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
35.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
32.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
39.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
32.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
33.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
34.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
44.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
35.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
40.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
44.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
42.9b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
43.1b
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
32.6b
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
42.1b
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Compiler

Compiled 6426 to 4150 computations (35.4% saved)

localize51.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
0.3b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
0.3b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.3b
(log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
Compiler

Compiled 187 to 26 computations (86.1% saved)

series140.0ms (0.2%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
88.0ms
lambda1
@-inf
(log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
18.0ms
lambda2
@inf
(log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
16.0ms
lambda2
@-inf
(log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
15.0ms
lambda1
@inf
(log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
2.0ms
lambda1
@0
(log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))

rewrite64.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
635×pow1_binary64
579×add-log-exp_binary64
579×expm1-log1p-u_binary64
578×log1p-expm1-u_binary64
565×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0710
113410
2156810
Stop Event
node limit
Counts
1 → 15
Calls
Call 1
Inputs
(log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (pow.f64 (cbrt.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) 2) (cbrt.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))))))

simplify48.0ms (0.1%)

Algorithm
egg-herbie
Rules
568×associate-+l+_binary64
473×associate-+r+_binary64
363×associate-*r*_binary64
360×associate-*l*_binary64
359×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
079533
1230524
2736518
33654513
Stop Event
node limit
Counts
39 → 32
Calls
Call 1
Inputs
(log.f64 (+.f64 1 (sin.f64 lambda2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)) (+.f64 1 (sin.f64 lambda2)))) (log.f64 (+.f64 1 (sin.f64 lambda2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)) (+.f64 1 (sin.f64 lambda2)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda1 4) (+.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) (*.f64 -3 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)))))) (log.f64 (+.f64 1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)) (+.f64 1 (sin.f64 lambda2)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda1 4) (+.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) (*.f64 -3 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)))))) (+.f64 (log.f64 (+.f64 1 (sin.f64 lambda2))) (*.f64 1/720 (*.f64 (+.f64 (*.f64 -1 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (+.f64 (*.f64 15 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2))) (*.f64 -30 (/.f64 (pow.f64 (sin.f64 lambda2) 3) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 3))))) (pow.f64 lambda1 6))))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(*.f64 lambda2 (cos.f64 lambda1))
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (pow.f64 (cos.f64 lambda1) 2))))
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 -1 (cos.f64 lambda1)) (*.f64 2 (pow.f64 (cos.f64 lambda1) 3))) (pow.f64 lambda2 3)))))
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (pow.f64 (cos.f64 lambda1) 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (+.f64 (*.f64 -6 (pow.f64 (cos.f64 lambda1) 4)) (*.f64 4 (pow.f64 (cos.f64 lambda1) 2))))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 -1 (cos.f64 lambda1)) (*.f64 2 (pow.f64 (cos.f64 lambda1) 3))) (pow.f64 lambda2 3))))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
Outputs
(log.f64 (+.f64 1 (sin.f64 lambda2)))
(log1p.f64 (sin.f64 lambda2))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)) (+.f64 1 (sin.f64 lambda2)))) (log.f64 (+.f64 1 (sin.f64 lambda2))))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (+.f64 1 (sin.f64 lambda2))) (log1p.f64 (sin.f64 lambda2)))
(fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (log1p.f64 (sin.f64 lambda2)))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)) (+.f64 1 (sin.f64 lambda2)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda1 4) (+.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) (*.f64 -3 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)))))) (log.f64 (+.f64 1 (sin.f64 lambda2)))))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (+.f64 1 (sin.f64 lambda2))) (fma.f64 1/24 (*.f64 (pow.f64 lambda1 4) (+.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) (/.f64 (*.f64 -3 (pow.f64 (sin.f64 lambda2) 2)) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)))) (log1p.f64 (sin.f64 lambda2))))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (+.f64 1 (sin.f64 lambda2))) (fma.f64 1/24 (*.f64 (pow.f64 lambda1 4) (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))))) (log1p.f64 (sin.f64 lambda2))))
(fma.f64 (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (*.f64 1/24 (pow.f64 lambda1 4)) (fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (log1p.f64 (sin.f64 lambda2))))
(+.f64 (log1p.f64 (sin.f64 lambda2)) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 lambda1 4) (pow.f64 (sin.f64 lambda2) 2)) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)) -1/8) (*.f64 (*.f64 (*.f64 lambda1 lambda1) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (+.f64 (*.f64 (*.f64 lambda1 lambda1) 1/24) -1/2))))
(+.f64 (*.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 2)) (+.f64 1 (sin.f64 lambda2)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda1 4) (+.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) (*.f64 -3 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)))))) (+.f64 (log.f64 (+.f64 1 (sin.f64 lambda2))) (*.f64 1/720 (*.f64 (+.f64 (*.f64 -1 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (+.f64 (*.f64 15 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2))) (*.f64 -30 (/.f64 (pow.f64 (sin.f64 lambda2) 3) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 3))))) (pow.f64 lambda1 6))))))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (+.f64 1 (sin.f64 lambda2))) (+.f64 (fma.f64 1/24 (*.f64 (pow.f64 lambda1 4) (+.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) (/.f64 (*.f64 -3 (pow.f64 (sin.f64 lambda2) 2)) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)))) (log1p.f64 (sin.f64 lambda2))) (*.f64 (*.f64 1/720 (fma.f64 -1 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) (fma.f64 15 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)) (/.f64 (*.f64 -30 (pow.f64 (sin.f64 lambda2) 3)) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 3))))) (pow.f64 lambda1 6))))
(fma.f64 -1/2 (/.f64 (*.f64 (sin.f64 lambda2) (*.f64 lambda1 lambda1)) (+.f64 1 (sin.f64 lambda2))) (fma.f64 1/24 (*.f64 (pow.f64 lambda1 4) (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))))) (fma.f64 1/720 (*.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)) 15 (*.f64 -30 (/.f64 (pow.f64 (sin.f64 lambda2) 3) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 3)))) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (pow.f64 lambda1 6)) (log1p.f64 (sin.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (fma.f64 1/24 (*.f64 (pow.f64 lambda1 4) (fma.f64 -3 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))))) (fma.f64 (-.f64 (fma.f64 (/.f64 (pow.f64 (sin.f64 lambda2) 2) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)) 15 (*.f64 -30 (pow.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) 3))) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (*.f64 1/720 (pow.f64 lambda1 6)) (log1p.f64 (sin.f64 lambda2)))))
(+.f64 (fma.f64 (fma.f64 -30 (pow.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) 3) (*.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) (+.f64 -1 (*.f64 (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2))) 15)))) (*.f64 1/720 (pow.f64 lambda1 6)) (log1p.f64 (sin.f64 lambda2))) (+.f64 (*.f64 (/.f64 (*.f64 (pow.f64 lambda1 4) (pow.f64 (sin.f64 lambda2) 2)) (pow.f64 (+.f64 1 (sin.f64 lambda2)) 2)) -1/8) (*.f64 (*.f64 (*.f64 lambda1 lambda1) (/.f64 (sin.f64 lambda2) (+.f64 1 (sin.f64 lambda2)))) (+.f64 (*.f64 (*.f64 lambda1 lambda1) 1/24) -1/2))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(*.f64 lambda2 (cos.f64 lambda1))
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (pow.f64 (cos.f64 lambda1) 2))))
(fma.f64 lambda2 (cos.f64 lambda1) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (pow.f64 (cos.f64 lambda1) 2)))
(fma.f64 lambda2 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (pow.f64 (cos.f64 lambda1) 2))))
(*.f64 (cos.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1)))) lambda2))
(*.f64 lambda2 (+.f64 (cos.f64 lambda1) (*.f64 (pow.f64 (cos.f64 lambda1) 2) (*.f64 lambda2 -1/2))))
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 -1 (cos.f64 lambda1)) (*.f64 2 (pow.f64 (cos.f64 lambda1) 3))) (pow.f64 lambda2 3)))))
(fma.f64 lambda2 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (pow.f64 (cos.f64 lambda1) 2)) (*.f64 1/6 (*.f64 (fma.f64 -1 (cos.f64 lambda1) (*.f64 2 (pow.f64 (cos.f64 lambda1) 3))) (pow.f64 lambda2 3)))))
(fma.f64 lambda2 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (pow.f64 (cos.f64 lambda1) 2)) (*.f64 1/6 (*.f64 (-.f64 (*.f64 2 (pow.f64 (cos.f64 lambda1) 3)) (cos.f64 lambda1)) (pow.f64 lambda2 3)))))
(fma.f64 (-.f64 (*.f64 2 (pow.f64 (cos.f64 lambda1) 3)) (cos.f64 lambda1)) (*.f64 1/6 (pow.f64 lambda2 3)) (*.f64 (cos.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1)))) lambda2)))
(fma.f64 1/6 (*.f64 (fma.f64 2 (pow.f64 (cos.f64 lambda1) 3) (neg.f64 (cos.f64 lambda1))) (pow.f64 lambda2 3)) (*.f64 lambda2 (+.f64 (cos.f64 lambda1) (*.f64 (pow.f64 (cos.f64 lambda1) 2) (*.f64 lambda2 -1/2)))))
(+.f64 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (pow.f64 (cos.f64 lambda1) 2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (+.f64 (*.f64 -6 (pow.f64 (cos.f64 lambda1) 4)) (*.f64 4 (pow.f64 (cos.f64 lambda1) 2))))) (*.f64 1/6 (*.f64 (+.f64 (*.f64 -1 (cos.f64 lambda1)) (*.f64 2 (pow.f64 (cos.f64 lambda1) 3))) (pow.f64 lambda2 3))))))
(fma.f64 lambda2 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (pow.f64 (cos.f64 lambda1) 2)) (fma.f64 1/24 (*.f64 (pow.f64 lambda2 4) (fma.f64 -6 (pow.f64 (cos.f64 lambda1) 4) (*.f64 4 (pow.f64 (cos.f64 lambda1) 2)))) (*.f64 1/6 (*.f64 (fma.f64 -1 (cos.f64 lambda1) (*.f64 2 (pow.f64 (cos.f64 lambda1) 3))) (pow.f64 lambda2 3))))))
(fma.f64 lambda2 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (pow.f64 (cos.f64 lambda1) 2)) (fma.f64 1/24 (*.f64 (pow.f64 lambda2 4) (fma.f64 4 (pow.f64 (cos.f64 lambda1) 2) (*.f64 -6 (pow.f64 (cos.f64 lambda1) 4)))) (*.f64 1/6 (*.f64 (-.f64 (*.f64 2 (pow.f64 (cos.f64 lambda1) 3)) (cos.f64 lambda1)) (pow.f64 lambda2 3))))))
(fma.f64 lambda2 (cos.f64 lambda1) (fma.f64 1/24 (*.f64 (pow.f64 lambda2 4) (fma.f64 4 (pow.f64 (cos.f64 lambda1) 2) (*.f64 -6 (pow.f64 (cos.f64 lambda1) 4)))) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 lambda1) 2)) (*.f64 lambda2 (+.f64 (*.f64 (pow.f64 (cos.f64 lambda1) 3) 1/3) (*.f64 (cos.f64 lambda1) -1/6)))))))
(fma.f64 lambda2 (cos.f64 lambda1) (fma.f64 1/24 (*.f64 (pow.f64 lambda2 4) (fma.f64 4 (pow.f64 (cos.f64 lambda1) 2) (*.f64 -6 (pow.f64 (cos.f64 lambda1) 4)))) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 -1/2 (pow.f64 (cos.f64 lambda1) 2)) (*.f64 (fma.f64 2 (pow.f64 (cos.f64 lambda1) 3) (neg.f64 (cos.f64 lambda1))) (*.f64 1/6 lambda2))))))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))
(log.f64 (+.f64 1 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1))))
(log1p.f64 (*.f64 (sin.f64 lambda2) (cos.f64 lambda1)))

localize13.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 23 to 8 computations (65.2% saved)

series3.0ms (0%)

Counts
1 → 8
Calls

9 calls:

TimeVariablePointExpression
0.0ms
lambda1
@0
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
0.0ms
lambda1
@-inf
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
0.0ms
lambda2
@-inf
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
0.0ms
lambda2
@inf
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
0.0ms
phi2
@inf
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))

rewrite55.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
970×pow1_binary64
893×add-log-exp_binary64
893×log1p-expm1-u_binary64
893×expm1-log1p-u_binary64
874×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
117311
2232211
Stop Event
node limit
Counts
1 → 16
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) (pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2) (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))))))

simplify16.0ms (0%)

Algorithm
egg-herbie
Rules
40×fma-neg_binary64
24×fma-def_binary64
17×cancel-sign-sub-inv_binary64
14×sub-neg_binary64
11×distribute-rgt-neg-in_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
015112
13088
24988
38888
413988
517588
620888
722488
822688
Stop Event
saturated
Counts
24 → 19
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi2))
Outputs
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi2))
(atan2.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi2))
(atan2.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi2))
(atan2.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 phi2))
(atan2.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi2))
(atan2.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi2))
(atan2.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi2))
(atan2.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (sin.f64 phi2))
(atan2.f64 (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))

localize41.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
0.2b
(*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 88 to 16 computations (81.8% saved)

series9.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
phi2
@0
(*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
lambda1
@0
(*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
phi1
@0
(*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
lambda2
@-inf
(*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))
1.0ms
lambda2
@inf
(*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))

rewrite59.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
571×log-prod_binary64
476×prod-diff_binary64
393×pow-prod-down_binary64
307×pow2_binary64
227×fma-def_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01014
121514
2291514
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (pow.f64 (exp.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (pow.f64 (exp.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) phi1) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) phi1)))))))

simplify57.0ms (0.1%)

Algorithm
egg-herbie
Rules
677×associate-*l*_binary64
594×associate-*r*_binary64
586×distribute-lft-out_binary64
585×fma-def_binary64
370×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
092957
1269932
2824857
33810817
Stop Event
node limit
Counts
69 → 49
Calls
Call 1
Inputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) lambda1)))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 phi1 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) phi1))
Outputs
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (*.f64 phi2 phi2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 phi1 (*.f64 phi2 phi2)) -1/2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (*.f64 phi2 phi2))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 4))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (*.f64 phi2 phi2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (*.f64 (pow.f64 phi2 4) 1/24))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 (*.f64 phi2 phi2) (+.f64 -1/2 (*.f64 (*.f64 phi2 phi2) 1/24))))))
(+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 6)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 2)))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 4)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(fma.f64 -1/720 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (pow.f64 phi2 6)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (*.f64 phi2 phi2))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 4))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (pow.f64 phi2 6))) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (*.f64 phi2 phi2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (*.f64 (pow.f64 phi2 4) 1/24)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 phi1 (*.f64 1/24 (pow.f64 phi2 4))))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (+.f64 phi1 (*.f64 phi1 (*.f64 -1/720 (pow.f64 phi2 6)))) (*.f64 phi1 (*.f64 (*.f64 phi2 phi2) (+.f64 -1/2 (*.f64 (*.f64 phi2 phi2) 1/24))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) lambda1)))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 phi1 (*.f64 lambda1 (cos.f64 phi2)))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (neg.f64 (*.f64 (sin.f64 lambda2) (*.f64 phi1 (*.f64 lambda1 (cos.f64 phi2))))))
(*.f64 (*.f64 phi1 (cos.f64 phi2)) (-.f64 (cos.f64 lambda2) (*.f64 (neg.f64 lambda1) (sin.f64 lambda2))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 phi1 (*.f64 lambda1 (cos.f64 phi2)))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(-.f64 (fma.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 phi1 (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 phi2))))) (neg.f64 (*.f64 (sin.f64 lambda2) (*.f64 phi1 (*.f64 lambda1 (cos.f64 phi2))))))
(fma.f64 (*.f64 phi1 (*.f64 lambda1 (cos.f64 phi2))) (sin.f64 lambda2) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))
(*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 phi1 (*.f64 lambda1 (cos.f64 phi2)))) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))
(-.f64 (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))) (fma.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 -1/2 (*.f64 phi1 (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 phi2)))))) (neg.f64 (*.f64 (sin.f64 lambda2) (*.f64 phi1 (*.f64 lambda1 (cos.f64 phi2))))))
(+.f64 (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 phi1)) (+.f64 (*.f64 lambda1 (neg.f64 (cos.f64 phi2))) (*.f64 1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))
(fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 phi1))) phi1)) (*.f64 (*.f64 phi1 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (pow.f64 lambda1 3) 1/6) lambda1)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))
(*.f64 phi1 (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 (sin.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 lambda2 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) phi1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(fma.f64 phi1 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 phi1 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(fma.f64 (cos.f64 phi2) (*.f64 phi1 (*.f64 lambda2 (sin.f64 lambda1))) (fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 phi1 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (fma.f64 -1/2 (*.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 lambda2 lambda2)) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 (sin.f64 lambda1) phi1)) (fma.f64 -1/6 (*.f64 phi1 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (pow.f64 lambda2 3))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 phi1 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (*.f64 phi1 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 phi1 (+.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) phi1))
(*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2)))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))

localize37.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
3.9b
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2))
Compiler

Compiled 103 to 25 computations (75.7% saved)

series11.0ms (0%)

Counts
2 → 72
Calls

18 calls:

TimeVariablePointExpression
1.0ms
lambda1
@0
(pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)
1.0ms
phi2
@0
(pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)
1.0ms
lambda2
@0
(pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)
1.0ms
lambda2
@-inf
(pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)
1.0ms
lambda1
@-inf
(pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)

rewrite69.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
754×prod-diff_binary64
525×log-prod_binary64
359×fma-def_binary64
304×pow2_binary64
211×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01125
124725
2307725
Stop Event
node limit
Counts
2 → 74
Calls
Call 1
Inputs
(sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2))
(pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2) (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2) (*.f64 (cbrt.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (sqrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi2)) (*.f64 (sqrt.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 4))) (sqrt.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 1 1/2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (cbrt.f64 (cos.f64 phi2)) 2)) (cbrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (cos.f64 phi2))) (sqrt.f64 (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2))))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 phi2) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (cos.f64 phi2) 3) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2))))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi2) 3) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) 1/2))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2))) 2)) (log.f64 (cbrt.f64 (exp.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)))) (log.f64 (sqrt.f64 (exp.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi2) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 4)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2) (*.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 4)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (sqrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (sqrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2))) (cos.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2)) (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (pow.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 4))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) 1))))))

simplify80.0ms (0.1%)

Algorithm
egg-herbie
Rules
695×unsub-neg_binary64
624×unswap-sqr_binary64
535×fma-neg_binary64
493×distribute-neg-out_binary64
488×*-commutative_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01431653
14421604
215701469
342741452
Stop Event
node limit
Counts
146 → 122
Calls
Call 1
Inputs
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2)) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2)) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))) (*.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (cos.f64 (neg.f64 lambda2))))) (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (cos.f64 (neg.f64 lambda2))))))))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))))))
(+.f64 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2))))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 1/4 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 4)) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 1/4 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 4)) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2))) (*.f64 (+.f64 (*.f64 -1/24 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 -1/360 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 6)))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
Outputs
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))
(neg.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2))))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (*.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (*.f64 lambda1 lambda1) -1/2)))
(+.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) lambda1 (neg.f64 (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 2)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3)))))))
(fma.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) lambda1) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1))) (*.f64 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (*.f64 (cos.f64 phi2) -1/6))))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1))))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2))) (sin.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 lambda2 (cos.f64 lambda1)))))
(+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(fma.f64 1/6 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(fma.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2))))
(fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)))))
(fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(fma.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4))) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (+.f64 (*.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(fma.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2))))))
(fma.f64 -1/720 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (fma.f64 1/24 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2)))
(*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2))
(*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2))
(+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))))
(fma.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2) (*.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (pow.f64 (cos.f64 phi2) 2)))))
(fma.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 (cos.f64 phi2) 2) lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)))
(*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) 2)))
(*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) 2) (sin.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2)) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))))
(fma.f64 (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (*.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (*.f64 lambda1 lambda1) (fma.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2) (*.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (pow.f64 (cos.f64 phi2) 2))))))
(fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))))) (fma.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 (cos.f64 phi2) 2) lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2))))
(fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) 2))))
(fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) 2) (sin.f64 lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 (neg.f64 lambda2)) 2)) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (pow.f64 lambda1 2)) (+.f64 (*.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (*.f64 2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))) (*.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (cos.f64 (neg.f64 lambda2))))) (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (cos.f64 (neg.f64 lambda2))))))))))
(fma.f64 (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (*.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2)))) (*.f64 lambda1 lambda1) (fma.f64 (pow.f64 (neg.f64 (sin.f64 lambda2)) 2) (pow.f64 (cos.f64 phi2) 2) (fma.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) (pow.f64 (cos.f64 phi2) 2))) (*.f64 (pow.f64 lambda1 3) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (pow.f64 (cos.f64 phi2) 2))) -4/3)))))
(fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (cos.f64 lambda2) 2) (neg.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2))))) (fma.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2) (fma.f64 2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 (cos.f64 phi2) 2) lambda1))) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2))) (*.f64 -4/3 (pow.f64 lambda1 3))))))
(+.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) lambda1) 2))) (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 lambda1 (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2))) -4/3)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))))))
(-.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda2) 2) (*.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 (cos.f64 phi2) 2)) (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) lambda1) 2) (sin.f64 lambda2)))) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 (pow.f64 (cos.f64 phi2) 2) (sin.f64 lambda2))) (*.f64 (pow.f64 lambda1 3) -4/3)))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))
(fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))
(fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (*.f64 lambda2 -2)))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 lambda2 -2))))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))))))
(fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))))))
(fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (fma.f64 (*.f64 lambda2 lambda2) (-.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (*.f64 lambda2 -2))))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 lambda2 -2)))) (*.f64 (*.f64 lambda2 lambda2) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)))))
(+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (+.f64 (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 lambda2 -2)))) (*.f64 lambda2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))))))
(+.f64 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/3 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))))
(fma.f64 (pow.f64 lambda2 3) (*.f64 4/3 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1)))) (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2))) (*.f64 -2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (*.f64 (sin.f64 lambda1) (cos.f64 lambda1))))))))
(fma.f64 (pow.f64 lambda2 3) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) 4/3) (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (fma.f64 (*.f64 lambda2 lambda2) (-.f64 (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (cos.f64 lambda1) 2)) (*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (*.f64 lambda2 -2)))))
(+.f64 (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (*.f64 lambda2 lambda2) (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2))))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (+.f64 (*.f64 lambda2 -2) (*.f64 (pow.f64 lambda2 3) 4/3))))
(+.f64 (fma.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 lambda1) 2) (*.f64 lambda2 (*.f64 lambda2 (*.f64 (pow.f64 (cos.f64 phi2) 2) (-.f64 (pow.f64 (cos.f64 lambda1) 2) (pow.f64 (sin.f64 lambda1) 2)))))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (pow.f64 (cos.f64 phi2) 2))) (+.f64 (*.f64 lambda2 -2) (*.f64 (pow.f64 lambda2 3) 4/3))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)
(+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2))))
(+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (neg.f64 (*.f64 (*.f64 phi2 phi2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))))
(-.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 (*.f64 phi2 phi2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))
(*.f64 (+.f64 (*.f64 phi2 (neg.f64 phi2)) 1) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 1/4 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 4)) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2)))))
(fma.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3) (pow.f64 phi2 4) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (neg.f64 (*.f64 (*.f64 phi2 phi2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))))
(-.f64 (fma.f64 (pow.f64 phi2 4) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 (*.f64 phi2 phi2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))
(+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (+.f64 (*.f64 (pow.f64 phi2 4) 1/3) (*.f64 phi2 (neg.f64 phi2)))))
(fma.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (-.f64 (*.f64 (pow.f64 phi2 4) 1/3) (*.f64 phi2 phi2)) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/12 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 1/4 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 4)) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (+.f64 (*.f64 -1 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 phi2 2))) (*.f64 (+.f64 (*.f64 -1/24 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 -1/360 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (pow.f64 phi2 6)))))
(fma.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3) (pow.f64 phi2 4) (+.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (fma.f64 -1 (*.f64 (*.f64 phi2 phi2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 (pow.f64 phi2 6) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) -2/45)))))
(+.f64 (-.f64 (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 -2/45 (pow.f64 phi2 6))) (*.f64 (*.f64 phi2 phi2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (fma.f64 (pow.f64 phi2 4) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) 1/3) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 phi2 (neg.f64 phi2)) 1) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (*.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2) (+.f64 (*.f64 (pow.f64 phi2 6) -2/45) (*.f64 (pow.f64 phi2 4) 1/3))))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
(*.f64 (pow.f64 (cos.f64 phi2) 2) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))

localize51.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
0.8b
(-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))
3.8b
(sin.f64 (-.f64 lambda1 lambda2))
3.8b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 155 to 33 computations (78.7% saved)

series17.0ms (0%)

Counts
2 → 64
Calls

18 calls:

TimeVariablePointExpression
2.0ms
phi2
@-inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
lambda1
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
phi2
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
lambda2
@inf
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
1.0ms
phi1
@0
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))

rewrite99.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
746×fma-def_binary64
397×fma-neg_binary64
373×expm1-udef_binary64
373×log1p-udef_binary64
209×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01743
138143
2540543
Stop Event
node limit
Counts
2 → 126
Calls
Call 1
Inputs
(-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 2) (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 -2 (*.f64 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2)) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2)) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 lambda2) 3)) (/.f64 1 (fma.f64 (cos.f64 lambda2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2)) (/.f64 1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 lambda2))) (-.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2))) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (cos.f64 lambda2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 lambda2) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 lambda2) 3)) (fma.f64 (cos.f64 lambda2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 lambda2) 3))) (neg.f64 (fma.f64 (cos.f64 lambda2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2))) (neg.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (neg.f64 (cos.f64 lambda2)) 3)) (+.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (-.f64 (*.f64 (neg.f64 (cos.f64 lambda2)) (neg.f64 (cos.f64 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (*.f64 (neg.f64 (cos.f64 lambda2)) (neg.f64 (cos.f64 lambda2)))) (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1 (neg.f64 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1 (*.f64 (neg.f64 (cos.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1 (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1 (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) 1 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (-.f64 lambda1 lambda2)) (neg.f64 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (neg.f64 (cos.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (neg.f64 (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) 2) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) 2) (cbrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (*.f64 (cbrt.f64 (cos.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 lambda1)) 2) (*.f64 (cbrt.f64 (cos.f64 lambda1)) (cos.f64 lambda2)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (neg.f64 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (neg.f64 (cos.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (neg.f64 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (neg.f64 (cos.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 2) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 2) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 2) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 2) (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 2) (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) 2) (cbrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sqrt.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 lambda2)) (neg.f64 (sqrt.f64 (cos.f64 lambda2))) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 lambda2)) (*.f64 (sqrt.f64 (cos.f64 lambda2)) (cos.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 lambda1)) (*.f64 (sqrt.f64 (cos.f64 lambda1)) (cos.f64 lambda2)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (neg.f64 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (neg.f64 (cos.f64 lambda2)) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (sqrt.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2)) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2))) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2)) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -2 (*.f64 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2)) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2))) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2)) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2))) -2 (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2)) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2))) -2 (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2)) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2))) -2 (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 lambda2) 3)) (/.f64 1 (fma.f64 (cos.f64 lambda2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 lambda2) 3)) (/.f64 1 (fma.f64 (cos.f64 lambda2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3) (pow.f64 (cos.f64 lambda2) 3)) (/.f64 1 (fma.f64 (cos.f64 lambda2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2))) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2)) (/.f64 1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2)) (/.f64 1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (-.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2) (pow.f64 (cos.f64 lambda2) 2)) (/.f64 1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (neg.f64 (cos.f64 lambda2))) (cbrt.f64 (neg.f64 (cos.f64 lambda2)))) (cbrt.f64 (neg.f64 (cos.f64 lambda2))) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (neg.f64 (cos.f64 lambda2))) (sqrt.f64 (neg.f64 (cos.f64 lambda2))) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (sqrt.f64 (cos.f64 lambda2))) (sqrt.f64 (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 -1 (cos.f64 lambda2) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 lambda2))) (-.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 lambda2))) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 lambda2))) (-.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 lambda2))) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (+.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 lambda2))) (-.f64 (sqrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) (sqrt.f64 (cos.f64 lambda2))) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (neg.f64 (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2)) (cbrt.f64 (cos.f64 lambda2)) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (pow.f64 (cbrt.f64 (cos.f64 lambda1)) 2)) (cbrt.f64 (cos.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (sqrt.f64 (cos.f64 lambda1))) (sqrt.f64 (cos.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2)) (cbrt.f64 (cos.f64 lambda2)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (sqrt.f64 (cos.f64 lambda2))) (sqrt.f64 (cos.f64 lambda2)) (-.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2))) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2)) (fma.f64 (neg.f64 (cos.f64 lambda2)) 1 (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2))) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2)) (fma.f64 (neg.f64 (cbrt.f64 (cos.f64 lambda2))) (pow.f64 (cbrt.f64 (cos.f64 lambda2)) 2) (cos.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 -2 (sin.f64 (*.f64 (-.f64 lambda1 (+.f64 lambda2 lambda2)) 1/2))) (sin.f64 (*.f64 (+.f64 lambda2 (-.f64 lambda1 lambda2)) 1/2)) (+.f64 (neg.f64 (cos.f64 lambda2)) (cos.f64 lambda2)))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)) (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (sin.f64 phi1)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3) (pow.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2)) 3) (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2) (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))))))

simplify88.0ms (0.2%)

Algorithm
egg-herbie
Rules
525×*-commutative_binary64
362×distribute-lft-in_binary64
362×distribute-rgt-in_binary64
353×associate-+l+_binary64
333×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01722438
15482283
219992038
356932015
Stop Event
node limit
Counts
190 → 184
Calls
Call 1
Inputs
(-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))
(-.f64 (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))) (cos.f64 lambda2))
(-.f64 (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))) (cos.f64 lambda2))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))) (cos.f64 lambda2))
(-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))
(-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))
(-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))
(-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))
(-.f64 (cos.f64 lambda1) 1)
(-.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) 1)
(-.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1)))) (cos.f64 lambda1))) 1)
(-.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1)))) (cos.f64 lambda1)))) 1)
(-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1)) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1)) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2))))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 2)))) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 4))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 2)))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 6)))) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 4)))))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 -1/4 (cos.f64 (neg.f64 lambda2)))) (pow.f64 lambda1 2))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (+.f64 (*.f64 1/12 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 -1/4 (cos.f64 (neg.f64 lambda2)))) (pow.f64 lambda1 2)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 lambda1) 1)) (cos.f64 lambda1))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 lambda1) 1)) (cos.f64 lambda1)))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 1/2 (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1)))) (*.f64 -1/2 (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 lambda1) 1)) (cos.f64 lambda1))))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 1/2 (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1)))) (*.f64 -1/2 (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 lambda1) 1)) (cos.f64 lambda1)))))))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
Outputs
(-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))
(-.f64 (cos.f64 lambda2) (cos.f64 lambda2))
0
(-.f64 (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))) (cos.f64 lambda2))
(+.f64 (cos.f64 lambda2) (-.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) (cos.f64 lambda2)))
(+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (neg.f64 lambda1)) 0)
(*.f64 lambda1 (sin.f64 lambda2))
(-.f64 (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))) (cos.f64 lambda2))
(-.f64 (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))) (cos.f64 lambda2))
(+.f64 (-.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) 0)
(*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2))))
(*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2)))
(-.f64 (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))) (cos.f64 lambda2))
(-.f64 (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3)) (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))) (cos.f64 lambda2))
(fma.f64 1/6 (neg.f64 (*.f64 (pow.f64 lambda1 3) (sin.f64 lambda2))) (+.f64 (-.f64 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) 0))
(fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2)))))
(fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (*.f64 lambda1 (fma.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2) (sin.f64 lambda2))))
(-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))
(-.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 lambda2))
(-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))
(-.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 lambda2))
(-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))
(-.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 lambda2))
(-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))
(-.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 lambda2))
(-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 lambda1) 1)
(+.f64 (cos.f64 lambda1) -1)
(+.f64 -1 (cos.f64 lambda1))
(-.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) 1)
(+.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) -1)
(+.f64 -1 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(-.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1)))) (cos.f64 lambda1))) 1)
(+.f64 (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 lambda2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1))) (cos.f64 lambda1))) -1)
(+.f64 -1 (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (cos.f64 lambda1) 1/2) (cos.f64 lambda1))))
(+.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (fma.f64 lambda2 (*.f64 lambda2 (fma.f64 -1/2 (cos.f64 lambda1) 1/2)) -1))
(+.f64 (cos.f64 lambda1) (fma.f64 lambda2 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (fma.f64 -1/2 (cos.f64 lambda1) 1/2))) -1))
(-.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 lambda1))) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1)))) (cos.f64 lambda1)))) 1)
(+.f64 (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (fma.f64 (*.f64 lambda2 lambda2) (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1))) (cos.f64 lambda1)))) -1)
(+.f64 -1 (+.f64 (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (cos.f64 lambda1) 1/2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (cos.f64 lambda1) 1/2) (cos.f64 lambda1)) (-.f64 (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))) 1))
(+.f64 (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (cos.f64 lambda1) 1/2) (cos.f64 lambda1)) (fma.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))) -1))
(-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 lambda2))
(-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 lambda2))
(-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 lambda2))
(-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))
(-.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 lambda2))
(-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1)) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))))
(fma.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))))
(fma.f64 -1/6 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) phi1)))
(*.f64 (*.f64 (cos.f64 phi2) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1)) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2))))))
(fma.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))) (pow.f64 phi1 5)) (fma.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))))))))
(fma.f64 1/120 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi1 5))) (fma.f64 -1/6 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3))) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) phi1))))
(fma.f64 1/120 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi1 5))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(fma.f64 1/120 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi1 5))) (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1)) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))))))
(fma.f64 1/120 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))) (pow.f64 phi1 5)) (fma.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) phi1) (fma.f64 -1/5040 (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))) (pow.f64 phi1 7)) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))))))
(fma.f64 1/120 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi1 5))) (fma.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) phi1) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1/5040 (pow.f64 phi1 7))))))
(fma.f64 1/120 (*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (pow.f64 phi1 5))) (*.f64 (*.f64 (cos.f64 phi2) (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (+.f64 phi1 (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1))
(*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 2)))) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 phi2 phi2))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(fma.f64 -1/2 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (*.f64 -1/2 (sin.f64 phi1)))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 2)))) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 4))))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 phi2 phi2))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 4))))))
(fma.f64 -1/2 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (fma.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)) (*.f64 (pow.f64 phi2 4) 1/24))))
(+.f64 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)) (*.f64 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi2 phi2)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 2)))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 6)))) (+.f64 (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 4)))))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 phi2 phi2))) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 6))) (fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1) (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (pow.f64 phi2 4)))))))
(fma.f64 -1/2 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) (fma.f64 -1/720 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (pow.f64 phi2 6))) (fma.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1) (*.f64 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)) (*.f64 (pow.f64 phi2 4) 1/24)))))
(+.f64 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (+.f64 (sin.f64 phi1) (*.f64 (*.f64 phi2 phi2) (*.f64 -1/2 (sin.f64 phi1))))) (*.f64 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1))) (*.f64 (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))))
(*.f64 (+.f64 (cos.f64 lambda2) 0) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))) (*.f64 (+.f64 (cos.f64 lambda2) 0) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (*.f64 1/2 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 -1/4 (cos.f64 (neg.f64 lambda2)))) (pow.f64 lambda1 2))))))
(fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 -1/2 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) -1/4)))))))
(fma.f64 -1/2 (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (+.f64 (cos.f64 lambda2) 0) (*.f64 lambda1 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -3/4)))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (*.f64 1/2 (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -3/4)))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) lambda1)))) (+.f64 (*.f64 1/12 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 lambda2)) (cos.f64 lambda2))) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 -1/4 (cos.f64 (neg.f64 lambda2)))) (pow.f64 lambda1 2)))))))
(fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 phi1)))) (fma.f64 1/12 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (fma.f64 1/2 (-.f64 (cos.f64 lambda2) (cos.f64 lambda2)) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 lambda1) (fma.f64 -1/2 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) -1/4))))))))
(fma.f64 -1/2 (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))) (fma.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (+.f64 (cos.f64 lambda2) 0) (*.f64 lambda1 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -3/4))))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (pow.f64 lambda1 3) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) 1/12))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -3/4))))) (*.f64 (*.f64 (sin.f64 lambda2) (neg.f64 (cos.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 lambda1 (sin.f64 phi1))) (*.f64 1/12 (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2))))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 lambda1) 1)) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (+.f64 (cos.f64 lambda1) -1) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (+.f64 -1 (cos.f64 lambda1)) 1/2 (cos.f64 lambda1))))
(*.f64 (fma.f64 (+.f64 -1 (cos.f64 lambda1)) 1/2 (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 lambda1) 1)) (cos.f64 lambda1)))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (+.f64 (cos.f64 lambda1) -1) (cos.f64 lambda1)))))
(fma.f64 1/2 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 lambda2 (cos.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 (+.f64 -1 (cos.f64 lambda1)) 1/2 (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 -1 (cos.f64 lambda1)) 1/2 (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 lambda2 1/2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 lambda2 1/2))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 1/2 (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1)))) (*.f64 -1/2 (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 lambda1) 1)) (cos.f64 lambda1))))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 1/2 (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1))) (*.f64 -1/2 (cos.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (+.f64 (cos.f64 lambda1) -1) (cos.f64 lambda1))))))
(fma.f64 1/2 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 lambda2 (cos.f64 phi2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (cos.f64 lambda1) (+.f64 1/4 (*.f64 (cos.f64 lambda1) -1/4)))) (fma.f64 (+.f64 -1 (cos.f64 lambda1)) 1/2 (cos.f64 lambda1)))))
(fma.f64 1/2 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (fma.f64 (+.f64 -1 (cos.f64 lambda1)) 1/2 (cos.f64 lambda1)) (*.f64 lambda2 (*.f64 lambda2 (+.f64 1/4 (*.f64 (cos.f64 lambda1) -3/4)))))))
(fma.f64 1/2 (*.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 lambda2 (*.f64 lambda2 (+.f64 1/4 (*.f64 (cos.f64 lambda1) -3/4))))))))
(+.f64 (*.f64 1/2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 -1/12 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 1/2 (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1)))) (*.f64 -1/2 (cos.f64 lambda1)))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 lambda1) 1)) (cos.f64 lambda1)))))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (fma.f64 -1/12 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)))) (fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 1/2 (+.f64 1/2 (*.f64 -1/2 (cos.f64 lambda1))) (*.f64 -1/2 (cos.f64 lambda1))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 1/2 (+.f64 (cos.f64 lambda1) -1) (cos.f64 lambda1)))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/2 (cos.f64 lambda1) (+.f64 1/4 (*.f64 (cos.f64 lambda1) -1/4)))) (fma.f64 (+.f64 -1 (cos.f64 lambda1)) 1/2 (cos.f64 lambda1)))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (+.f64 (*.f64 lambda2 1/2) (*.f64 (pow.f64 lambda2 3) -1/12))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (fma.f64 (+.f64 -1 (cos.f64 lambda1)) 1/2 (cos.f64 lambda1)) (*.f64 lambda2 (*.f64 lambda2 (+.f64 1/4 (*.f64 (cos.f64 lambda1) -3/4)))))) (*.f64 (*.f64 (sin.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))) (+.f64 (*.f64 (pow.f64 lambda2 3) -1/12) (*.f64 lambda2 1/2))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 lambda2 (*.f64 lambda2 (+.f64 1/4 (*.f64 (cos.f64 lambda1) -3/4))))))) (*.f64 (sin.f64 lambda1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (pow.f64 lambda2 3) -1/12) (*.f64 lambda2 1/2)))))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 lambda2))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)))) (sin.f64 phi1)))
(*.f64 (cos.f64 phi2) (*.f64 (fma.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (sin.f64 phi1)))

eval443.0ms (0.8%)

Compiler

Compiled 46339 to 9566 computations (79.4% saved)

prune539.0ms (0.9%)

Pruning

121 alts after pruning (120 fresh and 1 done)

PrunedKeptTotal
New1133341167
Fresh118697
Picked101
Done314
Total11481211269
Error
0.0b
Counts
1269 → 121
Alt Table
Click to see full alt table
StatusErrorProgram
53.3b
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
45.0b
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
47.7b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
42.0b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
32.7b
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
44.6b
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
36.5b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
55.2b
(atan2.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
29.9b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
42.0b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
47.6b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
47.0b
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
47.1b
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
38.2b
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
47.4b
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
0.2b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
20.0b
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
0.3b
(atan2.f64 (*.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 3) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
25.1b
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
7.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
0.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
0.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
18.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
12.4b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
11.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
12.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
25.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
10.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
14.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
0.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
25.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
1.3b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (exp.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))))
10.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
10.7b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
10.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
24.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
33.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/2 (*.f64 lambda1 lambda1)) -1))))))
30.3b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
30.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
39.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
39.5b
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
11.1b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.3b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
30.3b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
37.5b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
30.0b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
3.5b
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
9.7b
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
30.9b
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
34.4b
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
39.7b
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
26.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
23.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
30.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
20.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
17.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
39.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
19.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
19.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
19.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
18.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
22.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
23.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
40.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
31.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
25.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
12.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
32.1b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
32.2b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
37.5b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
19.8b
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
40.0b
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
41.1b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
12.1b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
22.7b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
35.2b
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
18.0b
(atan2.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
46.7b
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
40.1b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
41.5b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
42.3b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
47.8b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
47.9b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
50.4b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
32.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
49.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
44.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
37.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
38.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
35.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
36.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
39.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
40.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
32.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
45.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
35.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
32.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
39.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
32.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
33.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
34.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
44.1b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
35.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
40.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
44.6b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
42.9b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
49.0b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
43.1b
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
48.6b
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
39.6b
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
32.6b
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
42.1b
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
53.2b
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
45.9b
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
44.6b
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
45.9b
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
53.2b
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
45.4b
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
Compiler

Compiled 3483 to 2288 computations (34.3% saved)

regimes1.5s (2.6%)

Counts
203 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/2 (*.f64 lambda1 lambda1)) -1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
(atan2.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) 2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 2)) (cos.f64 phi2)) (fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) 3) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 (+.f64 lambda1 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))))
(atan2.f64 (*.f64 (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
(atan2.f64 (*.f64 (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (log.f64 (cbrt.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (exp.f64 (*.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sin.f64 lambda1)) (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 (fma.f64 (neg.f64 (cbrt.f64 lambda2)) (pow.f64 (cbrt.f64 lambda2) 2) lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))) (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (fma.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)))) (cbrt.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1))) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
(atan2.f64 (*.f64 (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) 3)) (fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (fma.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
(atan2.f64 (*.f64 (+.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (neg.f64 (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Calls

7 calls:

232.0ms
(-.f64 lambda1 lambda2)
216.0ms
(-.f64 lambda1 lambda2)
205.0ms
lambda1
160.0ms
lambda2
156.0ms
phi2
Results
ErrorSegmentsBranch
0.1b1lambda1
0.1b1lambda2
0.1b1phi1
0.1b1phi2
0.1b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
0.1b1(-.f64 lambda1 lambda2)
0.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 5749 to 1083 computations (81.2% saved)

regimes1.2s (2%)

Counts
182 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/2 (*.f64 lambda1 lambda1)) -1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
(atan2.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) 2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 2)) (cos.f64 phi2)) (fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (-.f64 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (*.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
Calls

7 calls:

210.0ms
phi1
162.0ms
(-.f64 lambda1 lambda2)
142.0ms
lambda2
140.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
140.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
0.1b1lambda1
0.1b1lambda2
0.1b1phi1
0.1b1phi2
0.1b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
0.1b1(-.f64 lambda1 lambda2)
0.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4710 to 939 computations (80.1% saved)

regimes2.5s (4.4%)

Counts
175 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/2 (*.f64 lambda1 lambda1)) -1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
(atan2.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) 2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (/.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 lambda1) 2) (pow.f64 (*.f64 lambda2 (cos.f64 lambda1)) 2)) (cos.f64 phi2)) (fma.f64 lambda2 (cos.f64 lambda1) (sin.f64 lambda1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

7 calls:

688.0ms
lambda2
500.0ms
phi2
408.0ms
lambda1
286.0ms
phi1
254.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Results
ErrorSegmentsBranch
4.1b3lambda1
4.6b3lambda2
6.4b1phi1
2.6b3phi2
5.1b3(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
6.4b1(-.f64 lambda1 lambda2)
6.4b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4436 to 893 computations (79.9% saved)

bsearch598.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
307.0ms
7.264018513639833e-12
505.5639799364663
287.0ms
-0.08608647141831227
-0.000162269962643371
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.4s (2.5%)

Counts
166 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (*.f64 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))) (cos.f64 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 lambda2)) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 lambda2) (+.f64 (*.f64 1/2 (*.f64 lambda1 lambda1)) -1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))))))
(atan2.f64 (-.f64 (*.f64 (sin.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (cos.f64 1)) (*.f64 (cos.f64 (exp.f64 (log1p.f64 (-.f64 lambda1 lambda2)))) (sin.f64 1))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) 3)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (cos.f64 phi2)) 2))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

7 calls:

232.0ms
phi1
220.0ms
(-.f64 lambda1 lambda2)
192.0ms
(-.f64 lambda1 lambda2)
180.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
166.0ms
phi2
Results
ErrorSegmentsBranch
6.4b1lambda1
6.4b1lambda2
6.4b1phi1
6.4b1phi2
6.4b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
6.4b1(-.f64 lambda1 lambda2)
6.4b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4112 to 834 computations (79.7% saved)

regimes2.2s (3.8%)

Counts
145 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
Calls

7 calls:

403.0ms
phi2
363.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
354.0ms
phi1
317.0ms
lambda2
297.0ms
lambda1
Results
ErrorSegmentsBranch
6.3b3lambda1
6.3b3lambda2
6.6b3phi1
8.3b3phi2
9.5b2(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
9.0b2(-.f64 lambda1 lambda2)
9.0b2(-.f64 lambda1 lambda2)
Compiler

Compiled 3376 to 694 computations (79.4% saved)

bsearch475.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
237.0ms
10.983021466556234
369802.16391568596
236.0ms
-16933856550.50532
-1.0092376385714402e-7
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.2s (3.9%)

Counts
144 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
Calls

7 calls:

356.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
331.0ms
phi2
325.0ms
phi1
318.0ms
lambda2
297.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
6.4b3lambda1
6.3b3lambda2
6.7b3phi1
8.3b3phi2
9.5b2(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
9.0b2(-.f64 lambda1 lambda2)
9.0b2(-.f64 lambda1 lambda2)
Compiler

Compiled 3345 to 691 computations (79.3% saved)

bsearch469.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
230.0ms
10.983021466556234
369802.16391568596
237.0ms
-16933856550.50532
-1.0092376385714402e-7
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.3s (4%)

Counts
143 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
Calls

7 calls:

493.0ms
lambda2
379.0ms
phi2
334.0ms
lambda1
311.0ms
(-.f64 lambda1 lambda2)
302.0ms
phi1
Results
ErrorSegmentsBranch
6.4b3lambda1
7.7b4lambda2
6.8b3phi1
9.2b3phi2
9.5b2(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
9.7b2(-.f64 lambda1 lambda2)
9.7b2(-.f64 lambda1 lambda2)
Compiler

Compiled 3316 to 690 computations (79.2% saved)

bsearch520.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
224.0ms
0.028887363745734366
37424080679454.73
293.0ms
-7.424832858115512e+28
-7.85041563619259e+19
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes1.7s (3%)

Counts
142 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 phi2))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
Calls

7 calls:

389.0ms
lambda2
236.0ms
(-.f64 lambda1 lambda2)
235.0ms
phi2
231.0ms
(-.f64 lambda1 lambda2)
229.0ms
phi1
Results
ErrorSegmentsBranch
9.0b2lambda1
7.7b4lambda2
6.8b3phi1
9.4b3phi2
9.5b2(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
9.7b2(-.f64 lambda1 lambda2)
9.7b2(-.f64 lambda1 lambda2)
Compiler

Compiled 3287 to 689 computations (79% saved)

bsearch578.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
227.0ms
0.07719201905529957
11.106464221907133
346.0ms
-1.1444185548868805e+33
-4.3986440114930954e+30
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes809.0ms (1.4%)

Counts
132 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

7 calls:

244.0ms
phi2
93.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
91.0ms
(-.f64 lambda1 lambda2)
80.0ms
lambda1
78.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
10.7b1lambda1
10.7b1lambda2
10.7b1phi1
9.4b3phi2
10.7b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
10.7b1(-.f64 lambda1 lambda2)
10.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2980 to 634 computations (78.7% saved)

bsearch438.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
221.0ms
7.264018513639833e-12
505.5639799364663
216.0ms
-0.08608647141831227
-0.000162269962643371
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes804.0ms (1.4%)

Counts
130 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) 2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
Calls

6 calls:

241.0ms
phi2
181.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
89.0ms
lambda1
78.0ms
(-.f64 lambda1 lambda2)
72.0ms
lambda2
Results
ErrorSegmentsBranch
12.2b1lambda1
12.2b1lambda2
12.2b1phi1
9.8b3phi2
11.1b3(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2917 to 623 computations (78.6% saved)

bsearch444.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
206.0ms
9.664529313599592e-17
1.1174612433056549e-16
237.0ms
-0.08608647141831227
-0.000162269962643371
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes721.0ms (1.3%)

Counts
122 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))
Calls

6 calls:

178.0ms
phi2
164.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
88.0ms
(-.f64 lambda1 lambda2)
84.0ms
lambda1
72.0ms
lambda2
Results
ErrorSegmentsBranch
12.2b1lambda1
12.2b1lambda2
12.2b1phi1
9.8b3phi2
11.1b3(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2700 to 591 computations (78.1% saved)

bsearch448.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
222.0ms
7.264018513639833e-12
505.5639799364663
224.0ms
-0.08608647141831227
-0.000162269962643371
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes694.0ms (1.2%)

Counts
121 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 phi1 (cos.f64 phi2)) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) -1/2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cbrt.f64 (pow.f64 (sin.f64 (neg.f64 lambda2)) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
Calls

6 calls:

188.0ms
phi2
159.0ms
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
77.0ms
lambda2
73.0ms
(-.f64 lambda1 lambda2)
70.0ms
lambda1
Results
ErrorSegmentsBranch
12.2b1lambda1
12.2b1lambda2
12.2b1phi1
9.8b3phi2
11.1b3(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2674 to 586 computations (78.1% saved)

bsearch649.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
307.0ms
7.264018513639833e-12
505.5639799364663
340.0ms
-0.08608647141831227
-0.000162269962643371
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes443.0ms (0.8%)

Counts
103 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (+.f64 (*.f64 3/2 (cos.f64 lambda1)) -1/2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (pow.f64 phi2 4) (*.f64 1/24 (sin.f64 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 1/3 (*.f64 3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 phi2)) (sin.f64 (+.f64 phi1 phi2))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 1 (*.f64 1/24 (pow.f64 phi2 4))))) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (exp.f64 (log.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

90.0ms
lambda1
73.0ms
lambda2
61.0ms
(-.f64 lambda1 lambda2)
60.0ms
phi1
58.0ms
phi2
Results
ErrorSegmentsBranch
12.2b1lambda1
12.2b1lambda2
12.2b1phi1
12.2b1phi2
12.2b1(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
12.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2171 to 505 computations (76.7% saved)

regimes553.0ms (1%)

Counts
75 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (cos.f64 lambda2)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

163.0ms
lambda1
114.0ms
phi2
110.0ms
lambda2
43.0ms
(-.f64 lambda1 lambda2)
41.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
11.9b3lambda1
11.8b3lambda2
17.0b1phi1
14.2b3phi2
17.0b1(-.f64 lambda1 lambda2)
17.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1441 to 345 computations (76.1% saved)

bsearch472.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
216.0ms
369802.16391568596
992364600258203.3
254.0ms
-16933856550.50532
-1.0092376385714402e-7
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes619.0ms (1.1%)

Counts
71 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
Outputs
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
Calls

6 calls:

156.0ms
lambda2
152.0ms
lambda1
129.0ms
phi2
63.0ms
phi1
43.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
11.9b3lambda1
12.4b3lambda2
17.0b1phi1
14.2b3phi2
17.0b1(-.f64 lambda1 lambda2)
17.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1346 to 334 computations (75.2% saved)

bsearch437.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
217.0ms
0.028887363745734366
37424080679454.73
219.0ms
-0.0009263043778473284
-3.770400924148818e-6
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes597.0ms (1%)

Counts
70 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))
Outputs
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

154.0ms
lambda1
121.0ms
lambda2
107.0ms
phi2
74.0ms
(-.f64 lambda1 lambda2)
70.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
16.5b4lambda1
14.2b3lambda2
18.7b1phi1
15.1b3phi2
17.7b2(-.f64 lambda1 lambda2)
17.7b2(-.f64 lambda1 lambda2)
Compiler

Compiled 1324 to 331 computations (75% saved)

bsearch585.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
332.0ms
369802.16391568596
992364600258203.3
252.0ms
-16933856550.50532
-1.0092376385714402e-7
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes476.0ms (0.8%)

Counts
68 → 2
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

162.0ms
lambda2
113.0ms
lambda1
59.0ms
phi1
58.0ms
phi2
50.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
17.6b2lambda1
18.8b3lambda2
19.8b1phi1
19.8b1phi2
19.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1273 to 319 computations (74.9% saved)

bsearch218.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
217.0ms
-1.5089028339890058e-31
-7.372600986119148e-41
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes242.0ms (0.4%)

Counts
67 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) lambda2) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi2)))) 2) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (pow.f64 (sqrt.f64 (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) 2))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (fabs.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

45.0ms
lambda1
43.0ms
phi2
42.0ms
phi1
42.0ms
lambda2
38.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
19.8b1lambda1
19.8b1lambda2
19.8b1phi1
19.8b1phi2
19.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1251 to 315 computations (74.8% saved)

regimes335.0ms (0.6%)

Counts
45 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

6 calls:

72.0ms
lambda2
68.0ms
phi2
68.0ms
phi1
49.0ms
lambda1
30.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
20.4b2lambda1
19.4b3lambda2
21.2b2phi1
19.9b3phi2
22.7b1(-.f64 lambda1 lambda2)
22.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 750 to 223 computations (70.3% saved)

bsearch433.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
215.0ms
369802.16391568596
992364600258203.3
217.0ms
-16933856550.50532
-1.0092376385714402e-7
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes334.0ms (0.6%)

Counts
42 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
Calls

6 calls:

70.0ms
lambda2
66.0ms
phi1
65.0ms
phi2
58.0ms
lambda1
30.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
20.4b2lambda1
20.0b3lambda2
21.2b2phi1
19.9b3phi2
22.7b1(-.f64 lambda1 lambda2)
22.7b1(-.f64 lambda1 lambda2)
Compiler

Compiled 688 to 211 computations (69.3% saved)

bsearch749.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
317.0ms
161238318255.04105
9207892739158.336
431.0ms
-1596167106414.7578
-0.08608647141831227
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes542.0ms (0.9%)

Counts
41 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
Outputs
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
Calls

6 calls:

206.0ms
phi1
104.0ms
phi2
79.0ms
lambda1
53.0ms
lambda2
39.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
23.6b1lambda1
23.6b1lambda2
20.7b3phi1
20.0b3phi2
23.6b1(-.f64 lambda1 lambda2)
23.6b1(-.f64 lambda1 lambda2)
Compiler

Compiled 669 to 209 computations (68.8% saved)

bsearch812.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
416.0ms
161238318255.04105
9207892739158.336
395.0ms
-1596167106414.7578
-0.08608647141831227
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes422.0ms (0.7%)

Counts
40 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (*.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (/.f64 (+.f64 (sin.f64 (+.f64 (-.f64 phi1 lambda1) lambda2)) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))
(atan2.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2)))) lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 phi1 (*.f64 -1/2 (*.f64 phi2 phi2)))))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 (sin.f64 phi2) (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

108.0ms
lambda1
105.0ms
lambda2
66.0ms
(-.f64 lambda1 lambda2)
61.0ms
phi2
60.0ms
phi1
Results
ErrorSegmentsBranch
25.2b4lambda1
28.0b5lambda2
20.7b3phi1
21.1b3phi2
27.8b3(-.f64 lambda1 lambda2)
Compiler

Compiled 643 to 202 computations (68.6% saved)

bsearch446.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
208.0ms
1.5452379259299872e-16
3.3695782006013103e-16
237.0ms
-4.813574402070665e-7
-4.325966616567705e-9
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes231.0ms (0.4%)

Counts
29 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

74.0ms
phi1
46.0ms
phi2
43.0ms
lambda1
41.0ms
(-.f64 lambda1 lambda2)
14.0ms
lambda2
Results
ErrorSegmentsBranch
31.5b3lambda1
32.6b1lambda2
30.0b5phi1
29.9b3phi2
29.6b3(-.f64 lambda1 lambda2)
Compiler

Compiled 401 to 136 computations (66.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
6.401666434456024e-8
37424080679454.73
0.0ms
-0.0009263043778473284
-6.716477973330943e-7
Compiler

Compiled 33 to 23 computations (30.3% saved)

regimes158.0ms (0.3%)

Counts
28 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Calls

5 calls:

44.0ms
lambda1
43.0ms
phi1
28.0ms
phi2
16.0ms
lambda2
16.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
31.5b3lambda1
32.6b1lambda2
31.1b3phi1
31.5b2phi2
32.6b1(-.f64 lambda1 lambda2)
Compiler

Compiled 381 to 134 computations (64.8% saved)

bsearch464.0ms (0.8%)

Algorithm
binary-search
Steps
TimeLeftRight
202.0ms
1.051897588192805e-35
5.57517476428629e-35
262.0ms
-1.1760271697216962e-126
-3.0716375607997885e-137
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes264.0ms (0.5%)

Counts
26 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
Calls

6 calls:

53.0ms
(-.f64 lambda1 lambda2)
51.0ms
(-.f64 lambda1 lambda2)
41.0ms
lambda2
40.0ms
lambda1
39.0ms
phi1
Results
ErrorSegmentsBranch
31.9b3lambda1
31.9b3lambda2
31.6b3phi1
33.2b2phi2
32.2b4(-.f64 lambda1 lambda2)
32.2b4(-.f64 lambda1 lambda2)
Compiler

Compiled 351 to 134 computations (61.8% saved)

bsearch412.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
198.0ms
1.051897588192805e-35
5.57517476428629e-35
214.0ms
-4.325966616567705e-9
-2.379064147500527e-13
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes139.0ms (0.2%)

Counts
21 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (exp.f64 (log.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
(pow.f64 (sqrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 2)
(atan2.f64 (-.f64 (exp.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) 1) (sin.f64 phi2))
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2)))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
Calls

5 calls:

56.0ms
phi1
21.0ms
lambda1
20.0ms
phi2
20.0ms
lambda2
13.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
34.8b1lambda1
34.8b1lambda2
32.9b3phi1
33.4b2phi2
34.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 265 to 113 computations (57.4% saved)

bsearch567.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
252.0ms
1.5452379259299872e-16
3.3695782006013103e-16
314.0ms
-384292.7310545303
-4.813574402070665e-7
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes54.0ms (0.1%)

Counts
7 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
Calls

6 calls:

15.0ms
phi1
14.0ms
lambda2
6.0ms
(-.f64 lambda1 lambda2)
5.0ms
(-.f64 lambda1 lambda2)
5.0ms
phi2
Results
ErrorSegmentsBranch
35.5b1lambda1
34.3b3lambda2
33.5b3phi1
35.5b1phi2
35.5b1(-.f64 lambda1 lambda2)
35.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 102 to 57 computations (44.1% saved)

bsearch410.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
189.0ms
4.9515292356059845e-177
1.7674742054343428e-173
221.0ms
-1.1760271697216962e-126
-3.0716375607997885e-137
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes30.0ms (0.1%)

Counts
6 → 1
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Calls

5 calls:

6.0ms
(-.f64 lambda1 lambda2)
6.0ms
lambda2
5.0ms
phi1
5.0ms
phi2
5.0ms
lambda1
Results
ErrorSegmentsBranch
44.6b1lambda1
44.6b1lambda2
44.6b1phi1
44.6b1phi2
44.6b1(-.f64 lambda1 lambda2)
Compiler

Compiled 82 to 46 computations (43.9% saved)

regimes38.0ms (0.1%)

Accuracy

Total -11.7b remaining (-26.1%)

Threshold costs -11.7b (-26.1%)

Counts
2 → 3
Calls
Call 1
Inputs
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
Outputs
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
Calls

4 calls:

9.0ms
phi2
9.0ms
lambda1
9.0ms
phi1
8.0ms
lambda2
Results
ErrorSegmentsBranch
45.1b3lambda1
44.9b3lambda2
47.6b3phi1
47.0b2phi2
Compiler

Compiled 35 to 26 computations (25.7% saved)

bsearch415.0ms (0.7%)

Algorithm
binary-search
Steps
TimeLeftRight
213.0ms
2.8836690192230006e+32
2.812907776781162e+34
201.0ms
-1.1402927581291893e-54
-6.6790947452597945e-59
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify121.0ms (0.2%)

Algorithm
egg-herbie
Rules
71×*-commutative_binary64
59×+-commutative_binary64
57×sub-neg_binary64
41×distribute-rgt-neg-in_binary64
36×neg-sub0_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
02232914
13422912
24842912
35612912
46212912
56362912
66412912
76422912
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 3091445711511551/281474976710656) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 3091445711511551/281474976710656) (atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 lambda1 -74248328581155115736766611456) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1)))) (if (<=.f64 lambda1 8326215718464337/288230376151711744) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))))
(if (<=.f64 phi1 -1144418554886880507920637168189440) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 2781135586027387/36028797018963968) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 3920398843298509/40564819207303340847894502572032) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 3176576400015805/8589934592) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -8543649896253209/9223372036854775808) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 8326215718464337/288230376151711744) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda2 3176576400015805/8589934592) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -861431235331317/5708990770823839524233143877797980545530986496) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 lambda2 3176576400015805/8589934592) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -204309389621089/128) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 phi2 5283457212581185/32768) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(if (<=.f64 phi2 -204309389621089/128) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (if (<=.f64 phi2 5283457212581185/32768) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))))
(if (<=.f64 phi1 -568286560478445/1180591620717411303424) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 783528713720229/5070602400912917605986812821504) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 (-.f64 lambda1 lambda2) -1152921504606847/2305843009213693952) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 (-.f64 lambda1 lambda2) 944473296573929/9444732965739290427392) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3585215929893481/3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 7871232242934847/748288838313422294120286634350736906063837462003712) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5229772737559637/1208925819614629174706176) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 7871232242934847/748288838313422294120286634350736906063837462003712) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -6602098847878925/17179869184) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 783528713720229/5070602400912917605986812821504) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -3585215929893481/3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 5647764525968131/1140610154405548804660292901425072831223307126812139982644798129474818791802169346626478202829342849944660577393398601827672176180343859499563165329930553547062998668590066237520718548061650944) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(if (<=.f64 lambda2 -1967502844422467/1725436586697640946858688965569256363112777243042596638790631055949824) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2)) (if (<=.f64 lambda2 288366901922300059615386065174528) (atan2.f64 (sin.f64 lambda1) (sin.f64 phi2)) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))))
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
Outputs
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 3091445711511551/281474976710656) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 3091445711511551/281474976710656) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 3091445711511551/281474976710656) (atan2.f64 (*.f64 (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2))))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 3091445711511551/281474976710656) (atan2.f64 (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 lambda1 -74248328581155115736766611456) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1)))) (if (<=.f64 lambda1 8326215718464337/288230376151711744) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda1))))))
(if (<=.f64 lambda1 -74248328581155115736766611456) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda1 8326215718464337/288230376151711744) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(if (<=.f64 phi1 -1144418554886880507920637168189440) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 2781135586027387/36028797018963968) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
(if (<=.f64 phi1 -1144418554886880507920637168189440) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 2781135586027387/36028797018963968) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2)))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 3920398843298509/40564819207303340847894502572032) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 3920398843298509/40564819207303340847894502572032) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2)))))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2)))))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (log1p.f64 (expm1.f64 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 3 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))))
(if (<=.f64 phi2 -6057796884393/70368744177664) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi2 70253276282383/9671406556917033397649408) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (*.f64 3 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1/3)))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (if (<=.f64 lambda2 3176576400015805/8589934592) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (if (<=.f64 lambda2 3176576400015805/8589934592) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -8543649896253209/9223372036854775808) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 8326215718464337/288230376151711744) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 lambda2)))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))))
(if (<=.f64 lambda1 -8543649896253209/9223372036854775808) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda1 8326215718464337/288230376151711744) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (-.f64 lambda1 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda2 3176576400015805/8589934592) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 (sin.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 lambda2 3176576400015805/8589934592) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda1 -861431235331317/5708990770823839524233143877797980545530986496) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda1 -861431235331317/5708990770823839524233143877797980545530986496) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 lambda2 3176576400015805/8589934592) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 lambda2 -8878217783151333/524288) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (if (<=.f64 lambda2 3176576400015805/8589934592) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi2 -204309389621089/128) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 phi2 5283457212581185/32768) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(if (<=.f64 phi2 -204309389621089/128) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (if (<=.f64 phi2 5283457212581185/32768) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))
(if (<=.f64 phi2 -204309389621089/128) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (if (<=.f64 phi2 5283457212581185/32768) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))))
(if (<=.f64 phi2 -204309389621089/128) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (if (<=.f64 phi2 5283457212581185/32768) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))))
(if (<=.f64 phi1 -568286560478445/1180591620717411303424) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 783528713720229/5070602400912917605986812821504) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -568286560478445/1180591620717411303424) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 783528713720229/5070602400912917605986812821504) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 (-.f64 lambda1 lambda2) -1152921504606847/2305843009213693952) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 (-.f64 lambda1 lambda2) 944473296573929/9444732965739290427392) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -3585215929893481/3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (if (<=.f64 phi1 7871232242934847/748288838313422294120286634350736906063837462003712) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))
(if (<=.f64 phi1 -5229772737559637/1208925819614629174706176) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 7871232242934847/748288838313422294120286634350736906063837462003712) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -5229772737559637/1208925819614629174706176) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda2 lambda1))))) (if (<=.f64 phi1 7871232242934847/748288838313422294120286634350736906063837462003712) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 phi1 -6602098847878925/17179869184) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 783528713720229/5070602400912917605986812821504) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)) (sin.f64 phi2))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -6602098847878925/17179869184) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 783528713720229/5070602400912917605986812821504) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (sin.f64 phi2) (neg.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -6602098847878925/17179869184) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 783528713720229/5070602400912917605986812821504) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -6602098847878925/17179869184) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda2 lambda1))))) (if (<=.f64 phi1 783528713720229/5070602400912917605986812821504) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda2 lambda1)))))))
(if (<=.f64 phi1 -3585215929893481/3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 5647764525968131/1140610154405548804660292901425072831223307126812139982644798129474818791802169346626478202829342849944660577393398601827672176180343859499563165329930553547062998668590066237520718548061650944) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))))
(if (<=.f64 phi1 -3585215929893481/3048582568667961163458591044719888970457615373696260889510895468384152088691177363398736428772941378085768487423248655171335913749304966119424) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda2 lambda1))))) (if (<=.f64 phi1 5647764525968131/1140610154405548804660292901425072831223307126812139982644798129474818791802169346626478202829342849944660577393398601827672176180343859499563165329930553547062998668590066237520718548061650944) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda2 lambda1)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
(if (<=.f64 lambda2 -1967502844422467/1725436586697640946858688965569256363112777243042596638790631055949824) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2)) (if (<=.f64 lambda2 288366901922300059615386065174528) (atan2.f64 (sin.f64 lambda1) (sin.f64 phi2)) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))))
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
Compiler

Compiled 1915 to 828 computations (56.8% saved)

soundness0.0ms (0%)

end276.0ms (0.5%)

Compiler

Compiled 1799 to 253 computations (85.9% saved)

Profiling

Loading profile data...