Details

Time bar (total: 48.6s)

analyze1.4s (2.9%)

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

Compiled 29 to 18 computations (37.9% saved)

sample12.0s (24.8%)

Results
9.4s5574×body1024valid
1.3s1328×body512valid
748.0ms195×body2048valid
583.0ms1159×body256valid

preprocess228.0ms (0.5%)

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)

simplify38.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

1 alts after pruning (1 fresh and 0 done)

PrunedKeptTotal
New112
Fresh101
Picked000
Done000
Total213
Error
13.9b
Counts
3 → 1
Alt Table
Click to see full alt table
StatusErrorProgram
13.9b
(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))))))
Compiler

Compiled 28 to 17 computations (39.3% saved)

localize34.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 96 to 17 computations (82.3% saved)

series17.0ms (0%)

Counts
4 → 76
Calls

27 calls:

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

rewrite106.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
788×prod-diff_binary64
710×log-prod_binary64
366×fma-def_binary64
277×expm1-udef_binary64
277×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01331
128031
2381131
Stop Event
node limit
Counts
4 → 157
Calls
Call 1
Inputs
(sin.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
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 (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 (*.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 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (#(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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))) -2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 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 cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 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)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi2)) (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi1) 3) (pow.f64 (sin.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (cos.f64 phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1))))))

simplify76.0ms (0.2%)

Algorithm
egg-herbie
Rules
620×associate-*l*_binary64
591×associate-*r*_binary64
579×fma-neg_binary64
407×distribute-rgt-out_binary64
377×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01531257
14591193
213451090
340021074
Stop Event
node limit
Counts
233 → 236
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 (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))
(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))
(*.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))
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(*.f64 (cos.f64 phi1) phi2)
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (*.f64 (cos.f64 phi1) phi2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 phi1) (pow.f64 phi2 7))) (*.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5))))))
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))
(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 (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 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 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (sin.f64 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (fma.f64 lambda1 (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)) (neg.f64 (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 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (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 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (fma.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (sin.f64 lambda1) (sin.f64 lambda1)) (*.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))
(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 (+.f64 (cos.f64 lambda2) (*.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 (cos.f64 lambda2) (*.f64 -1/2 lambda1)))))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (fma.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1) (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 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3)) (cos.f64 lambda2)))
(+.f64 (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1)))) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2)))
(fma.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (-.f64 (*.f64 (pow.f64 lambda1 3) 1/6) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(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) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 (*.f64 lambda2 -1/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))))
(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 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (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 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (cos.f64 lambda1) (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 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.f64 lambda1 lambda2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 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 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))
(*.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 lambda2 lambda1)) (pow.f64 phi1 3)) (fma.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (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 lambda2 lambda1)) (pow.f64 phi1 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 7)) (fma.f64 1/120 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 5)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(+.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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 (neg.f64 lambda2)))
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(+.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 (cos.f64 lambda2) (sin.f64 phi1)))
(-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) lambda1 (cos.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 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(-.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 phi1))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1))))
(fma.f64 (sin.f64 lambda2) (*.f64 lambda1 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2))))
(fma.f64 (cos.f64 lambda2) (sin.f64 phi1) (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (fma.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1) (sin.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))))))
(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 (pow.f64 lambda1 3) (sin.f64 phi1))) (fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))
(-.f64 (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 phi1))) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (*.f64 lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 phi1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1))))) (*.f64 (sin.f64 phi1) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2))))
(+.f64 (*.f64 (*.f64 lambda1 (sin.f64 phi1)) (fma.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (fma.f64 (*.f64 -1/6 (sin.f64 lambda2)) (pow.f64 lambda1 3) (cos.f64 lambda2))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (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 (-.f64 lambda2 lambda1)) (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 (-.f64 lambda2 lambda1)) (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 (-.f64 lambda2 lambda1)) (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 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1))
(+.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 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(fma.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))))))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (cos.f64 lambda1) (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)))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(fma.f64 -1/6 (*.f64 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (sin.f64 phi1)) (fma.f64 (*.f64 lambda2 (sin.f64 lambda1)) (sin.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2)))) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (fma.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (cos.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (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 lambda2 lambda1)) (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 lambda2 lambda1)) (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 lambda2 lambda1)) (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 lambda2 lambda1)) (sin.f64 phi1))
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2))
(fma.f64 -1/2 (*.f64 phi1 (*.f64 phi1 (sin.f64 phi2))) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(fma.f64 1/24 (*.f64 (sin.f64 phi2) (pow.f64 phi1 4)) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2)))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(*.f64 (sin.f64 phi2) (+.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (*.f64 1/24 (pow.f64 phi1 4))))
(*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 phi1 4) (sin.f64 phi2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(fma.f64 -1/720 (*.f64 (sin.f64 phi2) (pow.f64 phi1 6)) (fma.f64 1/24 (*.f64 (sin.f64 phi2) (pow.f64 phi1 4)) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2))))
(fma.f64 -1/720 (*.f64 (sin.f64 phi2) (pow.f64 phi1 6)) (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (*.f64 phi1 phi1))))))
(+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (*.f64 phi1 phi1))))))
(*.f64 (sin.f64 phi2) (+.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/720 (pow.f64 phi1 6)))))
(*.f64 (cos.f64 phi1) phi2)
(*.f64 phi2 (cos.f64 phi1))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (*.f64 (cos.f64 phi1) phi2))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (*.f64 phi2 (cos.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 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 (*.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 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)) (*.f64 phi2 (cos.f64 phi1))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3)) (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 1/120 (pow.f64 phi2 5)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi1) (pow.f64 phi2 3))) (+.f64 (*.f64 (cos.f64 phi1) phi2) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 phi1) (pow.f64 phi2 7))) (*.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/5040 (*.f64 (cos.f64 phi1) (pow.f64 phi2 7)) (*.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) (fma.f64 1/120 (*.f64 (cos.f64 phi1) (pow.f64 phi2 5)) (*.f64 (*.f64 -1/5040 (pow.f64 phi2 7)) (cos.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (cos.f64 phi1) (+.f64 (*.f64 1/120 (pow.f64 phi2 5)) (*.f64 -1/5040 (pow.f64 phi2 7)))))

eval69.0ms (0.1%)

Compiler

Compiled 8323 to 1761 computations (78.8% saved)

prune138.0ms (0.3%)

Pruning

46 alts after pruning (46 fresh and 0 done)

PrunedKeptTotal
New19046236
Fresh000
Picked101
Done000
Total19146237
Error
6.8b
Counts
237 → 46
Alt Table
Click to see full alt table
StatusErrorProgram
26.7b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (cos.f64 phi1) 3))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
25.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
20.9b
(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) (-.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))))))))
36.2b
(atan2.f64 (*.f64 (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))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
25.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
37.7b
(atan2.f64 (*.f64 (exp.f64 (log.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))))))
7.2b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
21.2b
(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 lambda1)))))
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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
7.2b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
34.2b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
7.1b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
31.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
40.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
25.4b
(atan2.f64 (*.f64 (log.f64 (exp.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))))))
14.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
35.8b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
7.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) (cos.f64 (-.f64 lambda1 lambda2))))))
32.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (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 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
24.4b
(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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.1b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
33.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
20.4b
(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) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
38.4b
(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) (+.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)))))))
39.3b
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
35.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
18.2b
(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 lambda2)))))
14.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
24.9b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.4b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
25.7b
(atan2.f64 (*.f64 (+.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)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
31.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.7b
(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) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
12.3b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
39.9b
(atan2.f64 (*.f64 (+.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)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
33.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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))))))
13.7b
(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) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
21.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.7b
(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) (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)))))))
14.3b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (+.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)))))))))
33.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 3442 to 2030 computations (41% saved)

localize80.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 135 to 23 computations (83% saved)

series7.0ms (0%)

Counts
1 → 24
Calls

6 calls:

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

rewrite57.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
562×pow1_binary64
513×add-log-exp_binary64
513×log1p-expm1-u_binary64
513×expm1-log1p-u_binary64
501×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
068
11168
213768
Stop Event
node limit
Counts
1 → 12
Calls
Call 1
Inputs
(*.f64 (cos.f64 lambda1) (sin.f64 lambda2))
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 (cos.f64 lambda1)) (sin.f64 lambda2)))))) (#(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 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))))))))

simplify152.0ms (0.3%)

Algorithm
egg-herbie
Rules
915×fma-def_binary64
575×associate-*l*_binary64
468×sqr-pow_binary64
447×associate-*r*_binary64
437×distribute-lft-out_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
046308
1124298
2331280
31026266
43556263
55370263
66395263
76764263
87056263
97425263
107891263
Stop Event
node limit
Counts
36 → 27
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))
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 (sin.f64 lambda2) (fma.f64 -1/2 (*.f64 lambda1 lambda1) 1))
(+.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)) (fma.f64 1/24 (pow.f64 lambda1 4) 1)))
(*.f64 (sin.f64 lambda2) (+.f64 1 (fma.f64 -1/2 (*.f64 lambda1 lambda1) (*.f64 1/24 (pow.f64 lambda1 4)))))
(+.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))))))
(fma.f64 (sin.f64 lambda2) (fma.f64 -1/2 (*.f64 lambda1 lambda1) (*.f64 -1/720 (pow.f64 lambda1 6))) (*.f64 (sin.f64 lambda2) (fma.f64 1/24 (pow.f64 lambda1 4) 1)))
(*.f64 (sin.f64 lambda2) (+.f64 (fma.f64 1/24 (pow.f64 lambda1 4) 1) (fma.f64 -1/2 (*.f64 lambda1 lambda1) (*.f64 -1/720 (pow.f64 lambda1 6)))))
(*.f64 (sin.f64 lambda2) (+.f64 (fma.f64 -1/720 (pow.f64 lambda1 6) 1) (fma.f64 -1/2 (*.f64 lambda1 lambda1) (*.f64 1/24 (pow.f64 lambda1 4)))))
(*.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) (fma.f64 -1/6 (pow.f64 lambda2 3) (fma.f64 1/120 (pow.f64 lambda2 5) 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 (*.f64 -1/5040 (pow.f64 lambda2 7)) (fma.f64 -1/6 (pow.f64 lambda2 3) (fma.f64 1/120 (pow.f64 lambda2 5) lambda2))))
(*.f64 (cos.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) (fma.f64 1/120 (pow.f64 lambda2 5) (fma.f64 -1/5040 (pow.f64 lambda2 7) 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))

localize29.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 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
3.6b
(cos.f64 (-.f64 lambda1 lambda2))
3.6b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 83 to 15 computations (81.9% saved)

series6.0ms (0%)

Counts
1 → 36
Calls

9 calls:

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

rewrite57.0ms (0.1%)

Algorithm
batch-egg-rewrite
Rules
750×prod-diff_binary64
574×unpow-prod-down_binary64
458×log-prod_binary64
344×fma-def_binary64
267×pow2_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
0811
118111
2259511
Stop Event
node limit
Counts
1 → 21
Calls
Call 1
Inputs
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
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 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)) 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 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 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))))))

simplify68.0ms (0.1%)

Algorithm
egg-herbie
Rules
626×neg-sub0_binary64
586×neg-mul-1_binary64
429×fma-def_binary64
374×fma-neg_binary64
341×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
075637
1210607
2601562
32524533
46442533
Stop Event
node limit
Counts
57 → 46
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)))
Outputs
(*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2))
(*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2))
(*.f64 (sin.f64 lambda2) (neg.f64 (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 (cos.f64 lambda2) lambda1)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (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 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda1 lambda1)) -1/2)))
(fma.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 phi2) (*.f64 1/2 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 (*.f64 (sin.f64 lambda2) 1/2) lambda1))) (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 (*.f64 (cos.f64 lambda2) lambda1) (neg.f64 (sin.f64 lambda2)))) (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 (neg.f64 (sin.f64 lambda2)) (+.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 -1/2 (*.f64 lambda1 lambda1))))) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) lambda1)))
(*.f64 (cos.f64 phi2) (+.f64 (-.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (sin.f64 lambda2) 1/2)) (sin.f64 lambda2)) (*.f64 (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 (*.f64 lambda2 (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 (*.f64 lambda2 (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 (*.f64 -1/2 lambda2) lambda2) 1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 (neg.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 lambda1)) (*.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 (*.f64 lambda2 (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 (*.f64 -1/2 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))))
(fma.f64 (fma.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)) lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.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 (+.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 (*.f64 -1/2 (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 (*.f64 -1/2 (*.f64 phi2 phi2))) (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 (*.f64 -1/2 (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)))))
(*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))))
(+.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 (*.f64 -1/2 (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 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.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)))

localize58.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
1.4b
(+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))
3.6b
(sin.f64 (-.f64 lambda1 lambda2))
7.4b
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))
7.5b
(sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2)))
Compiler

Compiled 182 to 42 computations (76.9% saved)

series16.0ms (0%)

Counts
3 → 108
Calls

27 calls:

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

rewrite111.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
655×log-prod_binary64
545×fma-neg_binary64
261×expm1-udef_binary64
261×log1p-udef_binary64
199×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify97.0ms (0.2%)

Algorithm
egg-herbie
Rules
522×associate-+l+_binary64
435×fma-neg_binary64
429×associate-+r+_binary64
410×distribute-rgt-out_binary64
381×distribute-lft-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01812092
15372036
214361922
342501902
Stop Event
node limit
Counts
241 → 217
Calls
Call 1
Inputs
(sin.f64 (-.f64 lambda2 lambda1))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 2))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda2 lambda1)))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 2))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 phi1 lambda2))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 2)))))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 2))))))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (-.f64 phi1 lambda1))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (pow.f64 lambda2 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2))))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (-.f64 phi1 lambda2))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (sin.f64 (+.f64 phi1 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1))))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1)))))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (-.f64 lambda2 lambda1))))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 phi1 3)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (-.f64 lambda2 lambda1)))))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2))))) (sin.f64 (-.f64 phi1 lambda2)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2))))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2))) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1)))))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 phi1 lambda1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda1))))) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (cos.f64 (+.f64 phi1 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)))) (pow.f64 lambda2 3)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 phi1 lambda1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda1))))) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2)))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
Outputs
(sin.f64 (-.f64 lambda2 lambda1))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))
(fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda2 lambda1)))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 2))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 phi1)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (sin.f64 (-.f64 lambda2 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda2 lambda1)))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 2))) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 phi1)) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 (-.f64 lambda2 lambda1)) (*.f64 -1/2 (*.f64 phi1 phi1)))) (fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi1 3)) (sin.f64 (-.f64 lambda2 lambda1))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (sin.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 phi1 lambda2))
(sin.f64 (+.f64 lambda2 phi1))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)))
(+.f64 (*.f64 (neg.f64 (cos.f64 (+.f64 lambda2 phi1))) lambda1) (sin.f64 (+.f64 lambda2 phi1)))
(-.f64 (sin.f64 (+.f64 lambda2 phi1)) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 2)))))
(+.f64 (fma.f64 -1 (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (+.f64 lambda2 phi1))))) (sin.f64 (+.f64 lambda2 phi1)))
(+.f64 (-.f64 (sin.f64 (+.f64 lambda2 phi1)) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1)))) (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (+.f64 lambda2 phi1)))))
(-.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 (+.f64 lambda2 phi1))) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (+.f64 lambda2 phi1))) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 phi1 lambda2)) (+.f64 (*.f64 1/6 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (+.f64 phi1 lambda2)) lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 (+.f64 phi1 lambda2)) (pow.f64 lambda1 2))))))
(+.f64 (fma.f64 1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (+.f64 lambda2 phi1))) (fma.f64 -1 (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (+.f64 lambda2 phi1)))))) (sin.f64 (+.f64 lambda2 phi1)))
(+.f64 (fma.f64 1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (+.f64 lambda2 phi1))) (-.f64 (*.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (+.f64 lambda2 phi1)))) (*.f64 lambda1 (cos.f64 (+.f64 lambda2 phi1))))) (sin.f64 (+.f64 lambda2 phi1)))
(+.f64 (*.f64 (cos.f64 (+.f64 lambda2 phi1)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (+.f64 lambda2 phi1))) (*.f64 (cos.f64 (+.f64 lambda2 phi1)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 lambda1))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))))
(fma.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1)) (sin.f64 (-.f64 phi1 lambda1)))
(fma.f64 lambda2 (cos.f64 (-.f64 lambda1 phi1)) (sin.f64 (-.f64 phi1 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2)))
(fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1)))))
(+.f64 (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (-.f64 phi1 lambda1))))
(+.f64 (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(+.f64 (*.f64 lambda2 (cos.f64 (-.f64 lambda1 phi1))) (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (pow.f64 lambda2 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (-.f64 phi1 lambda1)))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) lambda2))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 lambda2)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))))))
(fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (pow.f64 lambda2 3)) (+.f64 (*.f64 lambda2 (cos.f64 (-.f64 phi1 lambda1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (-.f64 phi1 lambda1)))))
(+.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (cos.f64 (-.f64 phi1 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (cos.f64 (-.f64 lambda1 phi1)) (-.f64 lambda2 (*.f64 1/6 (pow.f64 lambda2 3)))))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))
(sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1)))
(sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1)))
(sin.f64 (-.f64 phi1 lambda2))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2))))
(fma.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2)) (sin.f64 (-.f64 phi1 lambda2)))
(fma.f64 lambda1 (cos.f64 (-.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2)))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2)))))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))))
(+.f64 (*.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2))) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (*.f64 lambda1 (cos.f64 (-.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) lambda1))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (-.f64 phi1 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 -1/2 (*.f64 (*.f64 lambda1 lambda1) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2))))))
(+.f64 (fma.f64 lambda1 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (fma.f64 -1/6 (*.f64 (pow.f64 lambda1 3) (cos.f64 (-.f64 phi1 lambda2))) (sin.f64 (-.f64 phi1 lambda2))))
(+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 (cos.f64 (-.f64 phi1 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda2 phi1)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 phi1 lambda1))
(sin.f64 (+.f64 lambda1 phi1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (sin.f64 (+.f64 phi1 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))) (sin.f64 (+.f64 lambda1 phi1)))
(-.f64 (sin.f64 (+.f64 lambda1 phi1)) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1))))))
(+.f64 (fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))) (sin.f64 (+.f64 lambda1 phi1))) (*.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 (+.f64 lambda1 phi1)))))
(-.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (+.f64 lambda1 phi1))) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))))
(-.f64 (*.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))))
(fma.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (neg.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 phi1 lambda1)))) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 (+.f64 phi1 lambda1)))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 (+.f64 lambda1 phi1))) (fma.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 (+.f64 lambda1 phi1))) (+.f64 (sin.f64 (+.f64 lambda1 phi1)) (*.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 (+.f64 lambda1 phi1)))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (sin.f64 (+.f64 lambda1 phi1))) (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(fma.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 (cos.f64 (+.f64 lambda1 phi1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 lambda2))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))
(+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 (-.f64 lambda1 lambda2)))
(fma.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1)))
(fma.f64 -1/2 (*.f64 (*.f64 phi1 phi1) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) phi1))))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 -1/2 (*.f64 (*.f64 phi1 phi1) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))))))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 phi1 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) 1) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1))))
(sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))
(sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2)))
(sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1)))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (-.f64 lambda2 lambda1))))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 phi1 phi1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(+.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))
(+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 phi1 3)) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/2 (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/2 (sin.f64 (-.f64 lambda2 lambda1)))))))))
(+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (fma.f64 (*.f64 -1/6 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))) (pow.f64 phi1 3) (+.f64 (sin.f64 (-.f64 lambda1 lambda2)) (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 phi1 phi1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))))))))
(+.f64 (fma.f64 (pow.f64 phi1 3) (*.f64 -1/6 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (fma.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))) (sin.f64 (-.f64 lambda2 lambda1))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (*.f64 phi1 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (pow.f64 phi1 3) (*.f64 -1/6 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2)))) (*.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))) (sin.f64 (-.f64 lambda1 (+.f64 lambda2 (*.f64 -1 phi1)))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2)))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (sin.f64 (-.f64 phi1 lambda2))))
(fma.f64 (fma.f64 -1 (cos.f64 (+.f64 lambda2 phi1)) (cos.f64 (-.f64 phi1 lambda2))) lambda1 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))
(fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda2)) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 lambda2 phi1)) (cos.f64 (+.f64 lambda2 phi1))) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2))))) (sin.f64 (-.f64 phi1 lambda2)))))
(fma.f64 (fma.f64 -1 (cos.f64 (+.f64 lambda2 phi1)) (cos.f64 (-.f64 phi1 lambda2))) lambda1 (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))) (sin.f64 (-.f64 phi1 lambda2)))))
(+.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))) (sin.f64 (-.f64 phi1 lambda2))) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (sin.f64 (+.f64 lambda2 phi1))))
(fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))))
(fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 lambda2 phi1)) (cos.f64 (+.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1 (cos.f64 (+.f64 lambda2 phi1))) (cos.f64 (-.f64 phi1 lambda2))) lambda1) (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 lambda2 phi1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda2))))) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (*.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2))) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1)))))))))
(fma.f64 (fma.f64 -1 (cos.f64 (+.f64 lambda2 phi1)) (cos.f64 (-.f64 phi1 lambda2))) lambda1 (+.f64 (sin.f64 (+.f64 lambda2 phi1)) (+.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))) (sin.f64 (-.f64 phi1 lambda2))) (*.f64 (pow.f64 lambda1 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1))))))))
(+.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1)))) (fma.f64 (pow.f64 lambda1 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1)))) (sin.f64 (-.f64 phi1 lambda2)))) (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (sin.f64 (+.f64 lambda2 phi1))))
(+.f64 (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 (+.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))) (*.f64 (pow.f64 lambda1 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda2)) (*.f64 1/6 (cos.f64 (+.f64 lambda2 phi1))))))
(+.f64 (fma.f64 lambda1 (-.f64 (cos.f64 (-.f64 lambda2 phi1)) (cos.f64 (+.f64 lambda2 phi1))) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))) (*.f64 (pow.f64 lambda1 3) (fma.f64 1/6 (cos.f64 (+.f64 lambda2 phi1)) (*.f64 -1/6 (cos.f64 (-.f64 lambda2 phi1))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda1) lambda2))) (sin.f64 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 phi1 lambda1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2)))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 lambda1 phi1)) (*.f64 lambda2 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (neg.f64 (cos.f64 (+.f64 lambda1 phi1)))))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (fma.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1))) (sin.f64 (+.f64 lambda1 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (fma.f64 lambda2 (-.f64 (cos.f64 (-.f64 lambda1 phi1)) (cos.f64 (+.f64 lambda1 phi1))) (sin.f64 (+.f64 lambda1 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 phi1 lambda1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda1))))) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2))))
(+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 lambda1 phi1)) (fma.f64 (*.f64 lambda2 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))) (*.f64 lambda2 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (neg.f64 (cos.f64 (+.f64 lambda1 phi1))))))))
(+.f64 (sin.f64 (+.f64 lambda1 phi1)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (fma.f64 (*.f64 lambda2 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))) (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1)))))))
(+.f64 (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))))
(+.f64 (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 lambda1 phi1)) (cos.f64 (+.f64 lambda1 phi1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/6 (cos.f64 (+.f64 phi1 lambda1))) (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)))) (pow.f64 lambda2 3)) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 phi1 lambda1)) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/2 (sin.f64 (+.f64 phi1 lambda1))) (*.f64 -1/2 (sin.f64 (-.f64 phi1 lambda1))))) (*.f64 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 -1 (cos.f64 (+.f64 phi1 lambda1)))) lambda2)))))
(fma.f64 (fma.f64 1/6 (cos.f64 (+.f64 lambda1 phi1)) (*.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)))) (pow.f64 lambda2 3) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (+.f64 (sin.f64 (+.f64 lambda1 phi1)) (fma.f64 (*.f64 lambda2 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))) (*.f64 lambda2 (+.f64 (cos.f64 (-.f64 phi1 lambda1)) (neg.f64 (cos.f64 (+.f64 lambda1 phi1)))))))))
(+.f64 (+.f64 (fma.f64 (pow.f64 lambda2 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 1/6 (cos.f64 (+.f64 lambda1 phi1)))) (sin.f64 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 phi1))) (fma.f64 (*.f64 lambda2 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1)))) (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1))))))
(fma.f64 (pow.f64 lambda2 3) (fma.f64 -1/6 (cos.f64 (-.f64 phi1 lambda1)) (*.f64 1/6 (cos.f64 (+.f64 lambda1 phi1)))) (+.f64 (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 phi1 lambda1)) (cos.f64 (+.f64 lambda1 phi1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1))))))
(fma.f64 (pow.f64 lambda2 3) (fma.f64 -1/6 (cos.f64 (-.f64 lambda1 phi1)) (*.f64 1/6 (cos.f64 (+.f64 lambda1 phi1)))) (+.f64 (*.f64 lambda2 (-.f64 (cos.f64 (-.f64 lambda1 phi1)) (cos.f64 (+.f64 lambda1 phi1)))) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (+.f64 (sin.f64 (-.f64 phi1 lambda1)) (sin.f64 (+.f64 lambda1 phi1))))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 (+.f64 phi1 lambda1) lambda2)) (sin.f64 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))
(+.f64 (sin.f64 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))) (sin.f64 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (-.f64 lambda2 (-.f64 lambda1 phi1))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (+.f64 lambda1 (-.f64 phi1 lambda2))))
(+.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))) (sin.f64 (-.f64 lambda1 (-.f64 lambda2 phi1))))

localize79.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
0.2b
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
3.6b
(cos.f64 (-.f64 lambda1 lambda2))
3.6b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 117 to 26 computations (77.8% saved)

series12.0ms (0%)

Counts
1 → 20
Calls

6 calls:

TimeVariablePointExpression
4.0ms
phi2
@0
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
2.0ms
phi1
@0
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
2.0ms
phi2
@inf
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
1.0ms
phi1
@inf
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
1.0ms
phi1
@-inf
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)

rewrite74.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
713×pow1_binary64
656×add-log-exp_binary64
656×log1p-expm1-u_binary64
656×expm1-log1p-u_binary64
640×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
098
11828
218218
Stop Event
node limit
Counts
1 → 31
Calls
Call 1
Inputs
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
Outputs
((#(struct:change #<rule egg-rr> (2) ((x -.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 phi1) (sin.f64 phi2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi2) (cos.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2) (*.f64 (cbrt.f64 (sin.f64 phi2)) (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (*.f64 (cbrt.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 phi1)) 2) (*.f64 (cbrt.f64 (cos.f64 phi1)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi2)) (*.f64 (sqrt.f64 (sin.f64 phi2)) (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi1)) (*.f64 (sqrt.f64 (cos.f64 phi1)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi2)) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1/4) (*.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1/4) (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1/4)) (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 1/4))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi1) (pow.f64 (cbrt.f64 (sin.f64 phi2)) 2)) (cbrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (cos.f64 phi1) (sqrt.f64 (sin.f64 phi2))) (sqrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi2) (pow.f64 (cbrt.f64 (cos.f64 phi1)) 2)) (cbrt.f64 (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (cbrt.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi2 phi1)) (sin.f64 (+.f64 phi2 phi1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 phi1)) (sin.f64 phi2)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 phi1) 3) (pow.f64 (sin.f64 phi2) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (cos.f64 phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))))))

simplify91.0ms (0.2%)

Algorithm
egg-herbie
Rules
806×fma-def_binary64
702×associate-*l*_binary64
624×associate-*r*_binary64
384×cancel-sign-sub-inv_binary64
330×distribute-rgt-in_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
032238
178238
2210215
3850201
45165201
57879201
Stop Event
node limit
Counts
51 → 38
Calls
Call 1
Inputs
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(+.f64 (*.f64 (pow.f64 phi1 4) (-.f64 (+.f64 (*.f64 1/16 (sin.f64 phi2)) (*.f64 1/24 (sin.f64 phi2))) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 (pow.f64 phi1 4) (-.f64 (+.f64 (*.f64 1/16 (sin.f64 phi2)) (*.f64 1/24 (sin.f64 phi2))) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
Outputs
(sin.f64 phi2)
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))
(fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(+.f64 (*.f64 (pow.f64 phi1 4) (-.f64 (+.f64 (*.f64 1/16 (sin.f64 phi2)) (*.f64 1/24 (sin.f64 phi2))) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2)))
(fma.f64 (pow.f64 phi1 4) (-.f64 (*.f64 (sin.f64 phi2) 5/48) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2)) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2)))
(fma.f64 (pow.f64 phi1 4) (fma.f64 (sin.f64 phi2) 5/48 (*.f64 (sin.f64 phi2) -1/16)) (*.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)))
(fma.f64 (sin.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (*.f64 (pow.f64 phi1 4) (*.f64 (sin.f64 phi2) 1/24)))
(+.f64 (*.f64 -1/720 (*.f64 (pow.f64 phi1 6) (sin.f64 phi2))) (+.f64 (*.f64 (pow.f64 phi1 4) (-.f64 (+.f64 (*.f64 1/16 (sin.f64 phi2)) (*.f64 1/24 (sin.f64 phi2))) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi1 2) (sin.f64 phi2))) (sin.f64 phi2))))
(fma.f64 -1/720 (*.f64 (sin.f64 phi2) (pow.f64 phi1 6)) (fma.f64 (pow.f64 phi1 4) (-.f64 (*.f64 (sin.f64 phi2) 5/48) (pow.f64 (*.f64 -1/4 (sqrt.f64 (sin.f64 phi2))) 2)) (fma.f64 -1/2 (*.f64 (sin.f64 phi2) (*.f64 phi1 phi1)) (sin.f64 phi2))))
(fma.f64 (pow.f64 phi1 4) (fma.f64 (sin.f64 phi2) 5/48 (*.f64 (sin.f64 phi2) -1/16)) (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))))
(fma.f64 (sin.f64 phi2) (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 -1/2 (*.f64 phi1 phi1) 1)) (*.f64 (pow.f64 phi1 4) (*.f64 (sin.f64 phi2) 1/24)))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
(*.f64 (sin.f64 phi2) (cos.f64 phi1))

localize103.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))
0.2b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
0.6b
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
3.6b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 189 to 26 computations (86.2% saved)

series248.0ms (0.5%)

Counts
3 → 84
Calls

21 calls:

TimeVariablePointExpression
75.0ms
lambda1
@inf
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
61.0ms
lambda2
@-inf
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
38.0ms
lambda1
@-inf
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
37.0ms
lambda2
@inf
(log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))
20.0ms
phi1
@inf
(*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))

rewrite87.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
794×log-prod_binary64
414×pow2_binary64
295×pow1/3_binary64
288×expm1-udef_binary64
288×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01649
131325
2390325
Stop Event
node limit
Counts
3 → 130
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 (sin.f64 phi1) (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 (cos.f64 (-.f64 lambda1 lambda2)) 0)))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 1/3 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (sin.f64 lambda2))) (pow.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda1)))))))) (#(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 (*.f64 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (log.f64 (*.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda1))) (pow.f64 (exp.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (/.f64 (sin.f64 lambda2) 2) (sin.f64 lambda1)) (log.f64 (*.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (sin.f64 lambda2))) (pow.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda1)))))))) (#(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 0 (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (*.f64 1/3 (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 2 (*.f64 1/3 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda1))) (pow.f64 (exp.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (sin.f64 lambda2)) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 lambda1)) (*.f64 2 (cos.f64 lambda2)))))) (*.f64 1/3 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (sin.f64 lambda2)) (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda1))))) (*.f64 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda1)) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (*.f64 2 (sin.f64 lambda2)))))) (*.f64 1/3 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda1)) (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 lambda1)) (sin.f64 lambda2))))) (*.f64 (/.f64 (sin.f64 lambda2) 2) (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 (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 (pow.f64 (cbrt.f64 lambda2) 2)) (cbrt.f64 lambda2)))) (*.f64 (sin.f64 lambda1) (sin.f64 (*.f64 (neg.f64 (pow.f64 (cbrt.f64 lambda2) 2)) (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)) (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 (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))) (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 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))) (cbrt.f64 (pow.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 (cbrt.f64 (pow.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 (cbrt.f64 (pow.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))) (pow.f64 (cbrt.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 (pow.f64 (cbrt.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) (cbrt.f64 (pow.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 (sin.f64 lambda1) (sin.f64 lambda2)) 0)))) (#(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 (*.f64 (/.f64 (sin.f64 lambda2) 2) (sin.f64 lambda1)) (*.f64 (/.f64 (sin.f64 lambda2) 2) (sin.f64 lambda1)))))) (#(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/3 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 2 (*.f64 1/3 (*.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 (pow.f64 (sin.f64 lambda1) 3) (pow.f64 (sin.f64 lambda2) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 lambda2) 3) (pow.f64 (sin.f64 lambda1) 3)) 1/3)))) (#(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 0 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (pow.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2)))) 2)) (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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 2)))) (#(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 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (cos.f64 (-.f64 lambda1 lambda2)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 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 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 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 cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 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)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))

simplify98.0ms (0.2%)

Algorithm
egg-herbie
Rules
552×associate-*l/_binary64
500×distribute-lft-out_binary64
441×distribute-lft-in_binary64
441×distribute-rgt-in_binary64
335×associate-+l+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01772708
15832320
221612169
353632150
Stop Event
node limit
Counts
214 → 189
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 phi1 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(+.f64 (*.f64 phi1 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))
(+.f64 (*.f64 phi1 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))))
(+.f64 (*.f64 phi1 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (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) (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) (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) (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) (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) (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) (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) (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) (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) (cos.f64 lambda2))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.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 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.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 1/6 (*.f64 (sin.f64 phi1) (*.f64 (+.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 (*.f64 2 (pow.f64 (sin.f64 lambda2) 3)) (*.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 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.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) (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) (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) (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) (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) (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) (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) (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) (cos.f64 lambda1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.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 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.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 1/6 (*.f64 (pow.f64 lambda2 3) (*.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 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(*.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 (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 (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 (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))
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 1/2 (*.f64 (-.f64 (/.f64 (*.f64 2 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (*.f64 -1/2 (cos.f64 lambda2)) (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 (*.f64 (sin.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)))))) (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 1/6 (*.f64 (pow.f64 lambda1 3) (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 (*.f64 -1/2 (cos.f64 lambda2)) (exp.f64 (cos.f64 lambda2))))))))) (fma.f64 1/2 (*.f64 (-.f64 (/.f64 (*.f64 2 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (*.f64 -1/2 (cos.f64 lambda2)) (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 (pow.f64 lambda1 3) (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))))))))) (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))))
(fma.f64 1/6 (*.f64 (pow.f64 lambda1 3) (fma.f64 2 (pow.f64 (sin.f64 lambda2) 3) (fma.f64 6 (/.f64 (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 (*.f64 (cos.f64 lambda2) (sin.f64 lambda2)) -1/2)))) (*.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))))))))) (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 (*.f64 2 (fma.f64 (*.f64 1/2 (exp.f64 (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (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)))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (*.f64 2 (/.f64 (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 (*.f64 2 (fma.f64 (*.f64 1/2 (exp.f64 (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (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 (exp.f64 (cos.f64 lambda1)) (fma.f64 1/6 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -1/6 (sin.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (exp.f64 (cos.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 (*.f64 1/2 (exp.f64 (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (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))))
(fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (*.f64 2 (/.f64 (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 (exp.f64 (cos.f64 lambda1)) (/.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)))))) (fma.f64 2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -6 (*.f64 (/.f64 (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))))) (sin.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 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (fma.f64 (sin.f64 lambda2) lambda1 (*.f64 (pow.f64 lambda1 5) (*.f64 (sin.f64 lambda2) 1/120))))
(fma.f64 (*.f64 (sin.f64 lambda2) -1/6) (pow.f64 lambda1 3) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 1/120 (pow.f64 lambda1 5)))))
(*.f64 (sin.f64 lambda2) (+.f64 lambda1 (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (*.f64 1/120 (pow.f64 lambda1 5)))))
(+.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 (pow.f64 lambda1 5) (*.f64 (sin.f64 lambda2) 1/120)))))
(+.f64 (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 1/120 (pow.f64 lambda1 5)))) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(*.f64 (sin.f64 lambda2) (+.f64 (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))) (+.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/6 (pow.f64 lambda2 3)) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))))
(+.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 phi1 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(*.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))) phi1)
(+.f64 (*.f64 phi1 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))
(fma.f64 phi1 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 -1/6 (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi1 3))))
(*.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 phi1 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))))
(fma.f64 phi1 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (fma.f64 1/120 (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi1 5)) (*.f64 -1/6 (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi1 3)))))
(fma.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) phi1 (*.f64 (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 (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)) (*.f64 1/120 (pow.f64 phi1 5)))))
(+.f64 (*.f64 phi1 (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (log.f64 (*.f64 (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))))))
(fma.f64 phi1 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (fma.f64 1/120 (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi1 5)) (fma.f64 -1/5040 (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi1 7)) (*.f64 -1/6 (*.f64 (log.f64 (exp.f64 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (pow.f64 phi1 3))))))
(+.f64 (*.f64 (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/5040 (pow.f64 phi1 7)))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 -1/5040 (pow.f64 phi1 7))) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (sin.f64 phi1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.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 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 1/2 (*.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)) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 1/2 (*.f64 (-.f64 (/.f64 (*.f64 2 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (*.f64 -1/2 (cos.f64 lambda2)) (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2))) (pow.f64 (sin.f64 lambda2) 2)) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 phi1))) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (sin.f64 phi1)))
(*.f64 (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/2 (*.f64 (sin.f64 phi1) (*.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 1/6 (*.f64 (sin.f64 phi1) (*.f64 (+.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 (*.f64 2 (pow.f64 (sin.f64 lambda2) 3)) (*.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 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))))
(fma.f64 1/2 (*.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)) (sin.f64 phi1)) (fma.f64 1/6 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 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))) (fma.f64 2 (pow.f64 (sin.f64 lambda2) 3) (*.f64 -6 (/.f64 (*.f64 (sin.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)))))) (exp.f64 (cos.f64 lambda2)))))))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))))
(fma.f64 1/2 (*.f64 (-.f64 (/.f64 (*.f64 2 (fma.f64 1/2 (*.f64 (pow.f64 (sin.f64 lambda2) 2) (exp.f64 (cos.f64 lambda2))) (*.f64 (*.f64 -1/2 (cos.f64 lambda2)) (exp.f64 (cos.f64 lambda2))))) (exp.f64 (cos.f64 lambda2))) (pow.f64 (sin.f64 lambda2) 2)) (*.f64 (*.f64 lambda1 lambda1) (sin.f64 phi1))) (fma.f64 1/6 (*.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 (*.f64 -1/2 (cos.f64 lambda2)) (exp.f64 (cos.f64 lambda2)))))))) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))) (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (sin.f64 phi1))))
(+.f64 (*.f64 (fma.f64 (sin.f64 lambda2) lambda1 (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 1/2 (-.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 (*.f64 1/6 (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))))))))) lambda1)))))
(*.f64 (sin.f64 phi1) (fma.f64 1/6 (*.f64 (pow.f64 lambda1 3) (fma.f64 2 (pow.f64 (sin.f64 lambda2) 3) (fma.f64 6 (/.f64 (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 (*.f64 (cos.f64 lambda2) (sin.f64 lambda2)) -1/2)))) (*.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))))))))) (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (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 (sin.f64 phi1) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1))
(+.f64 (*.f64 1/2 (*.f64 (pow.f64 lambda2 2) (*.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 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(fma.f64 1/2 (*.f64 (*.f64 lambda2 lambda2) (*.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))) (*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(fma.f64 1/2 (*.f64 (-.f64 (/.f64 (*.f64 2 (fma.f64 (*.f64 1/2 (exp.f64 (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (exp.f64 (cos.f64 lambda1)))))) (exp.f64 (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1))) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (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 (sin.f64 phi1) (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (*.f64 2 (/.f64 (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 (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 1/6 (*.f64 (pow.f64 lambda2 3) (*.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 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(fma.f64 1/2 (*.f64 (*.f64 lambda2 lambda2) (*.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 1/6 (*.f64 (pow.f64 lambda2 3) (*.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 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(fma.f64 1/2 (*.f64 (-.f64 (/.f64 (*.f64 2 (fma.f64 (*.f64 1/2 (exp.f64 (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (exp.f64 (cos.f64 lambda1)))))) (exp.f64 (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1))) (fma.f64 1/6 (*.f64 (fma.f64 6 (/.f64 (fma.f64 (exp.f64 (cos.f64 lambda1)) (fma.f64 1/6 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -1/6 (sin.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (exp.f64 (cos.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 (*.f64 1/2 (exp.f64 (cos.f64 lambda1))) (pow.f64 (sin.f64 lambda1) 2) (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (exp.f64 (cos.f64 lambda1))))))))) (*.f64 (pow.f64 lambda2 3) (sin.f64 phi1))) (*.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (sin.f64 phi1))))
(fma.f64 1/2 (*.f64 (*.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 (sin.f64 phi1) (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)))))
(*.f64 (sin.f64 phi1) (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (-.f64 (*.f64 2 (/.f64 (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 (exp.f64 (cos.f64 lambda1)) (/.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)))))) (fma.f64 2 (pow.f64 (sin.f64 lambda1) 3) (*.f64 -6 (*.f64 (/.f64 (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))))) (sin.f64 lambda1)))))) (cos.f64 lambda1)))))
(*.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 (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 (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 (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 (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 (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 (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 (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))

eval433.0ms (0.9%)

Compiler

Compiled 50024 to 10960 computations (78.1% saved)

prune448.0ms (0.9%)

Pruning

85 alts after pruning (85 fresh and 0 done)

PrunedKeptTotal
New1167721239
Fresh281341
Picked101
Done404
Total1200851285
Error
0.0b
Counts
1285 → 85
Alt Table
Click to see full alt table
StatusErrorProgram
32.8b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
14.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.4b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
0.3b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
31.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
40.3b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
11.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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)))))))
35.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.7b
(atan2.f64 (*.f64 (exp.f64 (log.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))))))
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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
50.3b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
7.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 (cos.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3))))
16.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
30.0b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
23.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
25.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
30.8b
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
33.9b
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
26.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
13.7b
(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) (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)))))))
34.2b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
21.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
13.8b
(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) (fma.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
21.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
16.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 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
31.0b
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
38.3b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
21.7b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
30.6b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
31.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.8b
(atan2.f64 (*.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
33.3b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.8b
(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) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
25.8b
(atan2.f64 (*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
37.9b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
20.4b
(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) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
32.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
18.2b
(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 lambda2)))))
29.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))))))))
14.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1))))))
41.0b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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)))))))
33.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
25.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (-.f64 (+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.f64 (-.f64 lambda1 lambda2)))))))))
24.4b
(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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
40.2b
(atan2.f64 (*.f64 (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))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
35.8b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.1b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
34.1b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
40.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
36.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
35.8b
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
25.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
8.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
35.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
19.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
7.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
33.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda2))))))))
33.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
25.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
27.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
7.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 (cos.f64 phi2) (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) 1))))
24.9b
(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 (cos.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) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
29.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
28.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
31.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
25.8b
(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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
33.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
28.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
27.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 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
33.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
14.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
33.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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))))))
12.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
12.3b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
24.2b
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.7b
(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) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
18.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
25.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
12.9b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
42.4b
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 6044 to 3782 computations (37.4% saved)

localize152.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

Compiled 177 to 24 computations (86.4% saved)

series8.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite317.0ms (0.7%)

Algorithm
batch-egg-rewrite
Rules
736×log-prod_binary64
517×fma-def_binary64
283×fma-neg_binary64
269×pow1/3_binary64
263×expm1-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01337
127917
2397317
Stop Event
node limit
Counts
2 → 150
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
(+.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 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(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 0 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1))) (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 3)) (fma.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (-.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.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)) (sin.f64 phi1)) (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)) (sin.f64 phi1)) (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 (sin.f64 phi1) (+.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 (sin.f64 phi1) (-.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 (sin.f64 (-.f64 phi1 (-.f64 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 lambda2 lambda1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3) (pow.f64 (sin.f64 phi1) 3)) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 (-.f64 lambda2 lambda1))) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (exp.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 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 lambda2 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(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 (sin.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.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 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.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 (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (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))) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (sin.f64 phi1) 2)) (*.f64 (cbrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (sin.f64 phi1) 2)) (*.f64 (cbrt.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 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.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))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.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 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (cbrt.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 fma.f64 (*.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.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 lambda1) (cos.f64 lambda2)))) (sqrt.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 fma.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (sin.f64 phi1))) (*.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sqrt.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (*.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 (sin.f64 phi1))) (*.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sqrt.f64 (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (sin.f64 phi1)) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (sqrt.f64 (sin.f64 phi1)) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sqrt.f64 (sin.f64 phi1)) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (*.f64 (sqrt.f64 (sin.f64 phi1)) (sqrt.f64 (*.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 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (cbrt.f64 (pow.f64 (sin.f64 phi1) 2))) (cbrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.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 (sin.f64 phi1))) (sqrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cbrt.f64 (pow.f64 (sin.f64 phi1) 2))) (cbrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (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 (sin.f64 phi1))) (sqrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (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 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (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 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (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 (sin.f64 phi1) (cos.f64 lambda2)) (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2))) (cbrt.f64 (*.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 (sin.f64 phi1) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (sqrt.f64 (*.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 (exp.f64 (log1p.f64 (cos.f64 (-.f64 lambda2 lambda1)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (/.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (/.f64 (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 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 lambda2 lambda1)) (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 lambda2 lambda1)) (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 lambda2 lambda1)) (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 lambda2 lambda1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 2) (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) (sqrt.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(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 1 (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 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2)) (/.f64 1 (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 1 (/.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)) (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2))))))) (#(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)) (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 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3)) (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2) (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (*.f64 (sin.f64 lambda1) (*.f64 (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)) (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 (neg.f64 (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3))) (neg.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))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2))) (neg.f64 (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 (fma.f64 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda1 lambda2))) 2 (*.f64 2 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda1 lambda2))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (fma.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda1 lambda2))) 2 (*.f64 2 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 (+.f64 lambda1 lambda2))))) 4)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2)) (cos.f64 (+.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (cos.f64 (-.f64 lambda2 lambda1))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.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)) (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 3) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 3))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (/.f64 (fma.f64 (sin.f64 lambda1) (sin.f64 lambda2) (neg.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (-.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) 2))) -1)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (exp.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (pow.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 lambda2)) (sin.f64 lambda1)) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (pow.f64 (exp.f64 (sin.f64 lambda2)) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (cos.f64 lambda2)) (cos.f64 lambda1)) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (cos.f64 (-.f64 lambda2 lambda1)) 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 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (cos.f64 (-.f64 lambda2 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (cos.f64 (-.f64 lambda2 lambda1))) 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 (*.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 (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 (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 (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 (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 (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 (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 (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 (-.f64 (cos.f64 (-.f64 lambda2 lambda1)) (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 lambda2 lambda1)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.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 fma.f64 (*.f64 (cos.f64 lambda1) (pow.f64 (cbrt.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)))))))

simplify118.0ms (0.2%)

Algorithm
egg-herbie
Rules
783×associate-+l+_binary64
718×fma-def_binary64
517×distribute-rgt-out_binary64
506×associate-*l*_binary64
495×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0821342
12851261
29971182
338761172
466451172
579921172
Stop Event
node limit
Counts
210 → 193
Calls
Call 1
Inputs
(*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.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 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(+.f64 (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(cos.f64 lambda2)
(+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.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))
(+.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))))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
Outputs
(*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.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 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(fma.f64 phi1 (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 (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 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))
(+.f64 (*.f64 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(fma.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (fma.f64 1/120 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi1 5)) (*.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 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 (*.f64 -1/6 (pow.f64 phi1 3)) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (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/6 (pow.f64 phi1 3)))))
(*.f64 (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 phi1 (+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))))
(fma.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (fma.f64 1/120 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi1 5)) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 -1/5040 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi1 7))))))
(+.f64 (*.f64 (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/5040 (pow.f64 phi1 7)))) (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (fma.f64 -1/5040 (pow.f64 phi1 7) (*.f64 -1/6 (pow.f64 phi1 3))) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (fma.f64 -1/5040 (pow.f64 phi1 7) (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 phi1 (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (fma.f64 -1/6 (pow.f64 phi1 3) (*.f64 1/120 (pow.f64 phi1 5))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(fma.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 lambda1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 -1/6 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (pow.f64 lambda1 3)) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda1))) (fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (sin.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 phi1)) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) lambda1)))
(*.f64 (sin.f64 phi1) (+.f64 (fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))))
(*.f64 (sin.f64 phi1) (+.f64 (fma.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (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 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1))))
(*.f64 (sin.f64 phi1) (fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1) (*.f64 lambda2 (sin.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)))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 lambda1) (sin.f64 phi1))) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (sin.f64 phi1) (fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))) (*.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.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 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(cos.f64 lambda2)
(+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))
(fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))
(+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (cos.f64 lambda2) (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2))))
(fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))
(fma.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 lambda1)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)) (cos.f64 lambda2)))
(+.f64 (fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (fma.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.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 (*.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 (*.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 (*.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 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.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 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) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1) (*.f64 lambda2 (sin.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))))
(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 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(fma.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))) (*.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(+.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 (*.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 (*.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 (*.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 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))

localize28.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 73 to 14 computations (80.8% saved)

series11.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

rewrite98.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
791×log-prod_binary64
540×fma-def_binary64
291×expm1-udef_binary64
291×log1p-udef_binary64
263×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify78.0ms (0.2%)

Algorithm
egg-herbie
Rules
869×fma-def_binary64
722×associate-*l*_binary64
623×associate-*r*_binary64
415×distribute-rgt-neg-out_binary64
385×distribute-lft-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01151295
13731280
211891185
351301156
Stop Event
node limit
Counts
157 → 145
Calls
Call 1
Inputs
(*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)
(+.f64 (*.f64 -1 (*.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)))) phi2))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) phi2)))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))) (sin.f64 phi2))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))) (sin.f64 phi2)))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))) (sin.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (sin.f64 phi2) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(-.f64 (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (sin.f64 phi2) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.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))))) (sin.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.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 (sin.f64 phi2) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
Outputs
(*.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 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) phi2)
(-.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)) phi2)
(+.f64 (*.f64 -1 (*.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)))) phi2))
(fma.f64 -1 (*.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))) phi2))
(-.f64 (fma.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(+.f64 phi2 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (+.f64 -1 (*.f64 1/2 (*.f64 phi2 phi2)))))
(+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2))))))
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) (+.f64 (*.f64 -1/6 (pow.f64 phi2 3)) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (pow.f64 phi2 2)))) phi2)))
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) (fma.f64 -1/6 (pow.f64 phi2 3) (fma.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) phi2)))
(-.f64 (fma.f64 -1/6 (pow.f64 phi2 3) (fma.f64 1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 phi2 phi2))) phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)))
(+.f64 (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (+.f64 -1 (*.f64 1/2 (*.f64 phi2 phi2)))) (fma.f64 -1/6 (pow.f64 phi2 3) phi2))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2))))) (fma.f64 -1/6 (pow.f64 phi2 3) phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(sin.f64 phi2)
(+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))) (sin.f64 phi2))
(fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2))))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (*.f64 phi1 (cos.f64 phi2))) (sin.f64 phi2))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))) (sin.f64 phi2)))
(fma.f64 1/6 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 phi1 3)) (fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (sin.f64 phi2)))
(fma.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda2 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2)))))
(+.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 1/6 (pow.f64 phi1 3)) phi1)))
(+.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 1/6 (pow.f64 phi1 3)) phi1))))
(+.f64 (*.f64 1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 3)))) (+.f64 (*.f64 -1/120 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 phi1 5)))) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) phi1))) (sin.f64 phi2))))
(fma.f64 1/6 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 phi1 3)) (fma.f64 -1/120 (*.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (pow.f64 phi1 5)) (fma.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi1 (cos.f64 phi2))) (sin.f64 phi2))))
(fma.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 3) (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 -1/120 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 phi1 5) (cos.f64 (-.f64 lambda2 lambda1)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (cos.f64 phi2))))))
(+.f64 (sin.f64 phi2) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 1/6 (pow.f64 phi1 3))) (*.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2)) (-.f64 (*.f64 -1/120 (pow.f64 phi1 5)) phi1))))
(+.f64 (sin.f64 phi2) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 phi2) (*.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)) phi1)))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(-.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(+.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (*.f64 (neg.f64 lambda1) (sin.f64 lambda2)) (cos.f64 lambda2))))
(-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2))))
(-.f64 (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (sin.f64 phi2) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(-.f64 (+.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))) (sin.f64 phi2)) (*.f64 (*.f64 1/2 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))) (fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))) (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(+.f64 (fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (neg.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (-.f64 (*.f64 1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (cos.f64 lambda2))))
(+.f64 (fma.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (sin.f64 (neg.f64 lambda2)))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 (*.f64 1/2 (*.f64 lambda1 lambda1)) -1))))
(-.f64 (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))))) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (sin.f64 phi2) (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(-.f64 (fma.f64 -1/6 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) (+.f64 (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))) (sin.f64 phi2)) (*.f64 (*.f64 1/2 (sin.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(-.f64 (fma.f64 -1/6 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))) (fma.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (cos.f64 phi2))) (fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))) (sin.f64 phi2)))) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))
(+.f64 (sin.f64 phi2) (+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (*.f64 (neg.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3)) (*.f64 1/6 (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))))
(+.f64 (+.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 (*.f64 1/2 (*.f64 lambda1 lambda1)) -1)))) (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))) (sin.f64 phi2)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(fma.f64 (neg.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(+.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda2 (*.f64 (sin.f64 phi1) (neg.f64 (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.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))))) (sin.f64 phi2))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (fma.f64 1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 lambda2 lambda2)) (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(-.f64 (fma.f64 (neg.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (fma.f64 (*.f64 1/2 (*.f64 lambda2 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (sin.f64 phi2))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(-.f64 (+.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 lambda2 1/2) (*.f64 lambda2 (sin.f64 phi1))) (sin.f64 phi1)))) (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (+.f64 -1 (*.f64 lambda2 (*.f64 lambda2 1/2)))) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) lambda2))))
(-.f64 (+.f64 (*.f64 -1 (*.f64 lambda2 (*.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 (sin.f64 phi2) (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(-.f64 (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (fma.f64 1/2 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 lambda2 lambda2)) (sin.f64 phi2)) (*.f64 1/6 (*.f64 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (pow.f64 lambda2 3))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(-.f64 (-.f64 (fma.f64 1/2 (*.f64 lambda2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))) (fma.f64 1/6 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3))) (sin.f64 phi2))) (*.f64 lambda2 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (+.f64 (sin.f64 phi2) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 lambda2 1/2) (*.f64 lambda2 (sin.f64 phi1))) (sin.f64 phi1)))) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(+.f64 (+.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (+.f64 (*.f64 lambda2 (*.f64 lambda2 1/2)) -1))) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 phi2))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (sin.f64 phi1)) (neg.f64 (cos.f64 phi2)) (sin.f64 phi2))

localize34.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 100 to 18 computations (82% saved)

series8.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
2.0ms
lambda1
@0
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))
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
phi2
@0
(*.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))

rewrite61.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
01016
120916
2279716
Stop Event
node limit
Counts
1 → 25
Calls
Call 1
Inputs
(*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.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)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))) 2)) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.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 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) 2) 1/2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (cos.f64 phi2)) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2)) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (cos.f64 phi2))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.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
512×associate-+l+_binary64
441×distribute-neg-out_binary64
394×*-commutative_binary64
354×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
058696
1165673
2536633
32069600
45375600
Stop Event
node limit
Counts
61 → 47
Calls
Call 1
Inputs
(*.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
(*.f64 -1 (*.f64 (cos.f64 phi2) lambda2))
(neg.f64 (*.f64 (cos.f64 phi2) lambda2))
(*.f64 (cos.f64 phi2) (neg.f64 lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)))
(fma.f64 (cos.f64 phi2) lambda1 (neg.f64 (*.f64 (cos.f64 phi2) lambda2)))
(-.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 (cos.f64 phi2) lambda2))
(*.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 (cos.f64 phi2) lambda2) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda1 lambda1))))))
(fma.f64 (cos.f64 phi2) lambda1 (-.f64 (*.f64 1/2 (*.f64 (*.f64 (cos.f64 phi2) lambda2) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) lambda2)))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))) (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (+.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 lambda2 1/2) (neg.f64 lambda2)) lambda1))
(*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/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)))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1 (*.f64 (cos.f64 phi2) lambda2) (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda1 lambda1)))))))
(fma.f64 (cos.f64 phi2) lambda1 (-.f64 (fma.f64 1/2 (*.f64 (*.f64 (cos.f64 phi2) lambda2) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) -1/6))) (*.f64 (cos.f64 phi2) lambda2)))
(+.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))) (*.f64 -1/6 (pow.f64 lambda1 3)))))
(*.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 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (*.f64 (cos.f64 phi2) lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (neg.f64 lambda2))
(+.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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (*.f64 (cos.f64 phi2) lambda2) (neg.f64 (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))))
(*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (neg.f64 lambda2))
(+.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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (fma.f64 -1/2 (*.f64 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 (+.f64 (fma.f64 -1/2 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (*.f64 phi2 phi2)) (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 phi2 (*.f64 phi2 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (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 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (*.f64 (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (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 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1)))

localize101.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
0.2b
(*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
0.2b
(pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2)
3.6b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 116 to 27 computations (76.7% saved)

localize91.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 186 to 40 computations (78.5% saved)

series19.0ms (0%)

Counts
2 → 60
Calls

15 calls:

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

rewrite107.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
738×fma-def_binary64
424×fma-neg_binary64
340×expm1-udef_binary64
340×log1p-udef_binary64
191×add-sqr-sqrt_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01636
135536
2505936
Stop Event
node limit
Counts
2 → 109
Calls
Call 1
Inputs
(cos.f64 (+.f64 lambda1 lambda2))
(*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.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 (cos.f64 (+.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (cos.f64 (+.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.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 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 -1 (*.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 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (cbrt.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 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(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 (*.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 (*.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)) (fma.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (+.f64 (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2) (*.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))) (pow.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) 2)) (cos.f64 (-.f64 lambda2 lambda1)))))) (#(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 log.f64 (/.f64 (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.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 (cos.f64 (+.f64 lambda1 lambda2)) 1 (fma.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 lambda1 lambda2)) 1 (fma.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 lambda1 lambda2)) 1 (fma.f64 (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 lambda1 lambda2)) 1 (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 (+.f64 lambda1 lambda2)) 1 (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (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 fma.f64 1 (cos.f64 (+.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (cos.f64 (+.f64 lambda1 lambda2)) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.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 1 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (cbrt.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)) (*.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.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) (fma.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.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) (fma.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.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) (fma.f64 (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (sin.f64 lambda1) (sin.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) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (*.f64 (sin.f64 lambda1) (sin.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) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (*.f64 (sin.f64 lambda1) (sin.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))) (fma.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.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) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 -1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.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 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda1)) (sin.f64 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 -1 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.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))) (neg.f64 (*.f64 (sin.f64 lambda1) (sin.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 (neg.f64 (sin.f64 lambda1)) (sin.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 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(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 -1 (*.f64 (sin.f64 lambda1) (sin.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 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.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 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.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 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (*.f64 (neg.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))) (*.f64 (neg.f64 (sin.f64 lambda2)) (sin.f64 lambda1)))))) (#(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 -1 (*.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))) (*.f64 (neg.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (cbrt.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))) (*.f64 (neg.f64 (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.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 lambda2 lambda1))) 1/2) (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 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sin.f64 phi1)))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi1) 3) (pow.f64 (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.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 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3) (pow.f64 (sin.f64 phi1) 3)))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) 1))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 phi1) (*.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (+.f64 (cos.f64 (+.f64 lambda1 lambda2)) (cos.f64 (-.f64 lambda2 lambda1))) 1/2) (sin.f64 phi1) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)))))))

simplify219.0ms (0.5%)

Algorithm
egg-herbie
Rules
965×fma-def_binary64
365×*-commutative_binary64
361×distribute-rgt-neg-out_binary64
329×associate-+l+_binary64
324×associate-+r+_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01411661
14931473
217311338
355651289
Stop Event
node limit
Counts
169 → 154
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 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) phi1)
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) phi1) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) phi1) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) phi1) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (sin.f64 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) lambda1)) (*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (sin.f64 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))))))) (*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2)))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (sin.f64 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))))))) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1/6 (sin.f64 (neg.f64 lambda2))) (*.f64 -1/6 (sin.f64 lambda2)))) (*.f64 -1/6 (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2))))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.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 (*.f64 (sin.f64 lambda2) (sin.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 (*.f64 (sin.f64 lambda2) (sin.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 (*.f64 (sin.f64 lambda2) (sin.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) (cos.f64 lambda1))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (+.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1)))) (sin.f64 lambda1)) (*.f64 lambda2 (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (+.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1)))) (sin.f64 lambda1)) (*.f64 lambda2 (sin.f64 phi1))) (+.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 (+.f64 (*.f64 -1/2 (+.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1)))) (sin.f64 lambda1)) (*.f64 lambda2 (sin.f64 phi1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 -1/2 (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 1/6 (sin.f64 lambda1))))))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
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))
(fma.f64 (sin.f64 lambda2) (neg.f64 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 (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))
(fma.f64 (sin.f64 lambda2) (neg.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 lambda2)))
(+.f64 (cos.f64 lambda2) (*.f64 lambda1 (-.f64 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) -1/2)) (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 lambda1 (*.f64 (cos.f64 lambda2) 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 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 lambda1)) (*.f64 lambda2 (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.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 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (fma.f64 1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (cos.f64 lambda1))) (*.f64 lambda2 (sin.f64 lambda1)))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (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 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) phi1)
(*.f64 phi1 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))))
(*.f64 phi1 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) phi1) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))))
(fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) phi1 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.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 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (fma.f64 -1/6 (pow.f64 phi1 3) phi1))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) phi1) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))))))
(fma.f64 1/120 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 phi1 5)) (fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) phi1 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2)))))))))
(fma.f64 1/120 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (pow.f64 phi1 5)) (*.f64 (fma.f64 (sin.f64 lambda2) (sin.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 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (fma.f64 1/120 (pow.f64 phi1 5) phi1)))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))) (+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) phi1) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))))))
(fma.f64 -1/5040 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 phi1 7)) (fma.f64 1/120 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (pow.f64 phi1 5)) (fma.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) phi1 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))))))))
(+.f64 (*.f64 (fma.f64 (sin.f64 lambda2) (sin.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 (fma.f64 (sin.f64 lambda2) (sin.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)))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (+.f64 (fma.f64 -1/6 (pow.f64 phi1 3) phi1) (fma.f64 -1/5040 (pow.f64 phi1 7) (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2)))))
(*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 lambda2))))
(*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 2 (cos.f64 lambda2))))
(*.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) 1)
(*.f64 (cos.f64 lambda2) (sin.f64 phi1))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (sin.f64 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) lambda1)) (*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))))) (*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 lambda2)))))
(fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 2 (cos.f64 lambda2))) (*.f64 (fma.f64 -1/2 (-.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 1/2 (*.f64 (cos.f64 lambda2) 2)) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) 0))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda2) 1) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (sin.f64 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))))))) (*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2)))))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))))) (*.f64 1/2 (+.f64 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (cos.f64 lambda2) (cos.f64 lambda2))))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 lambda2))))))
(fma.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 lambda2) -1)) (*.f64 2 (cos.f64 lambda2)))) (*.f64 (fma.f64 -1/2 (-.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) 0)) (*.f64 (*.f64 1/2 (sin.f64 phi1)) (*.f64 2 (fma.f64 -1/2 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 lambda2)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (*.f64 1/2 (*.f64 (cos.f64 lambda2) (+.f64 2 (*.f64 (*.f64 lambda1 lambda1) -1))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 (sin.f64 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 lambda2)))) lambda1)) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 -1/2 (cos.f64 lambda2)) (*.f64 -1/2 (cos.f64 (neg.f64 lambda2))))))) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (+.f64 (*.f64 -1/6 (sin.f64 (neg.f64 lambda2))) (*.f64 -1/6 (sin.f64 lambda2)))) (*.f64 -1/6 (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 (neg.f64 lambda2))))))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) (*.f64 -1/2 (+.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))))) (fma.f64 1/2 (*.f64 (sin.f64 phi1) (*.f64 (*.f64 lambda1 lambda1) (*.f64 -1/2 (+.f64 (cos.f64 lambda2) (cos.f64 lambda2))))) (fma.f64 (fma.f64 -1/2 (*.f64 -1/6 (+.f64 (sin.f64 lambda2) (neg.f64 (sin.f64 lambda2)))) (*.f64 (sin.f64 lambda2) -1/6)) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1)) (*.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (cos.f64 lambda2)))))))
(+.f64 (fma.f64 1/2 (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (cos.f64 lambda2) -1)) (*.f64 2 (cos.f64 lambda2)))) (*.f64 (fma.f64 -1/2 (-.f64 (sin.f64 lambda2) (sin.f64 lambda2)) (sin.f64 lambda2)) (*.f64 lambda1 (sin.f64 phi1)))) (*.f64 (fma.f64 (sin.f64 lambda2) -1/6 (*.f64 1/12 (-.f64 (sin.f64 lambda2) (sin.f64 lambda2)))) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda1 (+.f64 (sin.f64 lambda2) 0)) (fma.f64 (fma.f64 (sin.f64 lambda2) -1/6 0) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1)) (*.f64 (*.f64 1/2 (sin.f64 phi1)) (*.f64 2 (fma.f64 -1/2 (*.f64 lambda1 (*.f64 (cos.f64 lambda2) lambda1)) (cos.f64 lambda2))))))
(+.f64 (*.f64 (*.f64 1/2 (sin.f64 phi1)) (*.f64 (cos.f64 lambda2) (+.f64 2 (*.f64 (*.f64 lambda1 lambda1) -1)))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (-.f64 lambda1 (*.f64 1/6 (pow.f64 lambda1 3))))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 (-.f64 lambda2 (*.f64 -1 lambda1)))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (cos.f64 lambda1))
(*.f64 (cos.f64 lambda1) (sin.f64 phi1))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (+.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1)))) (sin.f64 lambda1)) (*.f64 lambda2 (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(fma.f64 (fma.f64 -1/2 (*.f64 0 (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 lambda2 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (+.f64 (sin.f64 lambda1) 0))))
(*.f64 (sin.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (+.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1)))) (sin.f64 lambda1)) (*.f64 lambda2 (sin.f64 phi1))) (+.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 (fma.f64 -1/2 (*.f64 0 (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 lambda2 (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(fma.f64 (+.f64 (sin.f64 lambda1) 0) (*.f64 lambda2 (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))
(fma.f64 lambda2 (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.f64 lambda2 (sin.f64 lambda1))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (+.f64 (sin.f64 lambda1) (*.f64 -1 (sin.f64 lambda1)))) (sin.f64 lambda1)) (*.f64 lambda2 (sin.f64 phi1))) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 -1/2 (+.f64 (*.f64 -1/6 (sin.f64 lambda1)) (*.f64 1/6 (sin.f64 lambda1))))))))))
(fma.f64 (fma.f64 -1/2 (*.f64 0 (sin.f64 lambda1)) (sin.f64 lambda1)) (*.f64 lambda2 (sin.f64 phi1)) (fma.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 (pow.f64 lambda2 3) (fma.f64 -1/6 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) 0))))))))
(+.f64 (fma.f64 (+.f64 (sin.f64 lambda1) 0) (*.f64 lambda2 (sin.f64 phi1)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)))) (*.f64 (pow.f64 lambda2 3) (*.f64 (fma.f64 (sin.f64 lambda1) -1/6 0) (sin.f64 phi1))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) -1/6) (*.f64 lambda2 (sin.f64 lambda1)))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 (pow.f64 lambda2 3) -1/6) lambda2))))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1))))))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))
(*.f64 (+.f64 (*.f64 1/2 (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 (-.f64 lambda1 (*.f64 -1 lambda2))))) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda1 lambda2))))) (sin.f64 phi1))
(*.f64 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 1/2 (+.f64 (cos.f64 (+.f64 lambda2 lambda1)) (cos.f64 (-.f64 lambda2 lambda1))))) (sin.f64 phi1))

eval542.0ms (1.1%)

Compiler

Compiled 55596 to 10859 computations (80.5% saved)

prune739.0ms (1.5%)

Pruning

104 alts after pruning (103 fresh and 1 done)

PrunedKeptTotal
New1376471423
Fresh245680
Picked101
Done314
Total14041041508
Error
0.0b
Counts
1508 → 104
Alt Table
Click to see full alt table
StatusErrorProgram
37.4b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
29.9b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
32.8b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
14.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
35.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
33.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
50.3b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
31.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
40.3b
(atan2.f64 (sqrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
33.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.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) (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)))))))
52.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
34.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
37.7b
(atan2.f64 (*.f64 (exp.f64 (log.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))))))
11.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
33.2b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
23.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
50.2b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
42.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
16.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 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 2)))))
33.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
34.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
41.3b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.9b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
25.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
30.8b
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.8b
(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) (fma.f64 (+.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
33.9b
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
35.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
40.8b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
34.2b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.0b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
40.6b
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
38.3b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
21.7b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
30.6b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (log1p.f64 (expm1.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 lambda1) (cos.f64 lambda2)))))))
31.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
10.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
13.8b
(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) (fma.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
48.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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)))))))
16.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
40.4b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
38.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
37.2b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
34.2b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
20.4b
(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) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
25.8b
(atan2.f64 (*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
32.4b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
18.2b
(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 lambda2)))))
29.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))))))))
46.9b
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1))))))
37.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
35.8b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.1b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.9b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
33.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
25.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (-.f64 (+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.f64 (-.f64 lambda1 lambda2)))))))))
24.4b
(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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
40.2b
(atan2.f64 (*.f64 (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))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 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 (cos.f64 phi2) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cbrt.f64 (pow.f64 (sin.f64 phi1) 2))) (cbrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
36.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
34.1b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
40.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
35.8b
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
8.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
35.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
7.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.8b
(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) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))))))
25.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
33.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda2))))))))
33.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
24.9b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
36.9b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
39.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
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) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
29.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.2b
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
31.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
30.1b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.3b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
25.8b
(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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
33.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
44.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
33.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
28.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
14.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
38.7b
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
12.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
12.3b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
24.2b
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.7b
(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) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
18.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
30.1b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
12.9b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
35.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
Compiler

Compiled 6632 to 4260 computations (35.8% saved)

localize51.0ms (0.1%)

Local error

Found 4 expressions with local error:

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

Compiled 194 to 25 computations (87.1% saved)

series18.0ms (0%)

Counts
3 → 108
Calls

27 calls:

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

rewrite98.0ms (0.2%)

Algorithm
batch-egg-rewrite
Rules
828×log-prod_binary64
626×fma-def_binary64
310×fma-neg_binary64
283×expm1-udef_binary64
283×log1p-udef_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01449
129937
2419637
Stop Event
node limit
Counts
3 → 118
Calls
Call 1
Inputs
(*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1)))
(*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1))
Outputs
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (*.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) (sin.f64 phi1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) 1))))))
((#(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 (/.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda1 lambda2)))) (/.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 1 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.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))))) (#(struct:change #<rule egg-rr> (2) ((x *.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)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (cos.f64 (-.f64 lambda1 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3)) (/.f64 1 (fma.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (fma.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x *.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda1 lambda2)))) (/.f64 1 (*.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) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (fma.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 2)) (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 1 (/.f64 (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda1 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (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 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3)) (fma.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (fma.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 2)))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3)) (+.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (-.f64 (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 2) (*.f64 (*.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi1)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda1 lambda2)))) (*.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 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 3) (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3))) (neg.f64 (fma.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (fma.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 2))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda1 lambda2))))) (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (+.f64 lambda1 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (-.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2) (pow.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 2)) (fma.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (neg.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 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 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 log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (*.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) (+.f64 1 (expm1.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))))))) (#(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 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 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1)) (*.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 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(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 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) 1 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sin.f64 lambda2) (*.f64 (sin.f64 lambda1) (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 1 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (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)) (*.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 (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2) (*.f64 (cbrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(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))) (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) 2) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) 2) (cbrt.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (*.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) (*.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.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)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2)) (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (cbrt.f64 (pow.f64 (sin.f64 lambda1) 2)) (*.f64 (cbrt.f64 (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.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 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sqrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(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))) (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (sqrt.f64 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))) (*.f64 (sin.f64 phi1) (*.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))) (*.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.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)) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (sqrt.f64 (sin.f64 lambda1)) (*.f64 (sqrt.f64 (sin.f64 lambda1)) (*.f64 (sin.f64 phi1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (cos.f64 lambda2) (sin.f64 phi1)) (cos.f64 lambda1) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (sin.f64 lambda1) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2)) (cbrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (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 (sin.f64 phi1))) (sqrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (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 (sin.f64 phi1) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))) 2)) (cbrt.f64 (*.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 (sin.f64 phi1) (sqrt.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))) (sqrt.f64 (*.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 (sin.f64 phi1) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (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) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (sin.f64 phi1) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (sqrt.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (pow.f64 (cbrt.f64 (sin.f64 phi1)) 2)) (cbrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))) (#(struct:change #<rule egg-rr> (2) ((x fma.f64 (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sqrt.f64 (sin.f64 phi1))) (sqrt.f64 (sin.f64 phi1)) (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))))))
((#(struct:change #<rule egg-rr> (2) ((x +.f64 0 (*.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)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))) (log.f64 (cbrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x +.f64 (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) (log.f64 (sqrt.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x -.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) (sin.f64 phi1)) 2)))) (#(struct:change #<rule egg-rr> (2) ((x /.f64 (*.f64 (sin.f64 phi1) (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 1)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 3)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (sqrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 2)))) (#(struct:change #<rule egg-rr> (2) ((x pow.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3) 1/3)))) (#(struct:change #<rule egg-rr> (2) ((x sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 2))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (pow.f64 (exp.f64 (sin.f64 phi1)) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))) (#(struct:change #<rule egg-rr> (2) ((x log.f64 (+.f64 1 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))))))) (#(struct:change #<rule egg-rr> (2) ((x cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) 3))))) (#(struct:change #<rule egg-rr> (2) ((x expm1.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x log1p.f64 (expm1.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))) (#(struct:change #<rule egg-rr> (2) ((x exp.f64 (*.f64 (log.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 1))))))

simplify271.0ms (0.6%)

Algorithm
egg-herbie
Rules
1184×associate-+l+_binary64
742×associate-+r+_binary64
576×distribute-rgt-out_binary64
565×*-commutative_binary64
518×+-commutative_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
01492426
15092326
217752128
337042115
440912106
544462106
645992106
747982106
850532106
973552106
Stop Event
node limit
Counts
226 → 189
Calls
Call 1
Inputs
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 6)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (cos.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/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (+.f64 (*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (+.f64 (*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.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 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 phi1 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 phi1 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(+.f64 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 phi1 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(+.f64 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 phi1 7) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 -1/5040 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (*.f64 phi1 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7)))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.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 1/120 (*.f64 (pow.f64 lambda2 5) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
Outputs
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)))))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda1 lambda1))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4))) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (*.f64 1/24 (pow.f64 lambda1 4)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 lambda1 4)) 1)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 lambda1 4)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda1 lambda1)))))
(+.f64 (*.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4)))) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 6)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4))) (fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 -1/720 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 6))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4))) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda1))) (fma.f64 -1/720 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 6))) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/720 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 6))))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (*.f64 1/24 (pow.f64 lambda1 4)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 lambda1 6)) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (*.f64 1/24 (pow.f64 lambda1 4)))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (+.f64 (*.f64 -1/720 (pow.f64 lambda1 6)) 1))))
(fma.f64 1/24 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 4))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 (*.f64 -1/720 (pow.f64 lambda1 6)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda1 lambda1))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (cos.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/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (fma.f64 1/24 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (pow.f64 lambda2 4)) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (*.f64 1/24 (pow.f64 lambda2 4)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 1/24 (pow.f64 lambda2 4))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) (+.f64 1 (*.f64 1/24 (pow.f64 lambda2 4)))))
(+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 1/24 (*.f64 (pow.f64 lambda2 4) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 -1/720 (*.f64 (pow.f64 lambda2 6) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))))
(fma.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (fma.f64 1/24 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (pow.f64 lambda2 4)) (fma.f64 (sin.f64 phi1) (cos.f64 lambda1) (*.f64 -1/720 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (pow.f64 lambda2 6))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 lambda2 6)) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda1))) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (*.f64 1/24 (pow.f64 lambda2 4)))))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 -1/720 (pow.f64 lambda2 6)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 (+.f64 1 (*.f64 -1/720 (pow.f64 lambda2 6))) (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (*.f64 -1/2 (*.f64 lambda2 lambda2)))))
(*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 1 (+.f64 (*.f64 -1/720 (pow.f64 lambda2 6)) (+.f64 (*.f64 1/24 (pow.f64 lambda2 4)) (*.f64 lambda2 (*.f64 lambda2 -1/2))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) phi1))
(*.f64 (cos.f64 lambda2) (*.f64 phi1 (cos.f64 lambda1)))
(+.f64 (*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 lambda2)) (cos.f64 lambda1))))
(*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(*.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda1) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (+.f64 (*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(fma.f64 1/120 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (pow.f64 phi1 5)) (fma.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (*.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 lambda2)) (cos.f64 lambda1)))))
(fma.f64 1/120 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (pow.f64 phi1 5)) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (+.f64 (*.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(fma.f64 1/120 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (pow.f64 phi1 5)) (fma.f64 phi1 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 phi1 3) (cos.f64 lambda2)) (cos.f64 lambda1)) (*.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(+.f64 (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 -1/6 (pow.f64 phi1 3)))) (*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) phi1)))
(*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (+.f64 (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))
(*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))
(*.f64 (sin.f64 phi1) (cos.f64 lambda2))
(+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(fma.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 (sin.f64 phi1) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) -1/2)))
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (+.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))))
(fma.f64 -1/2 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 lambda1 lambda1))) (fma.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))) (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))))))
(+.f64 (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1)) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda1 lambda1)))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.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 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (*.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 (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(*.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 (*.f64 lambda2 lambda2) (sin.f64 phi1)) (cos.f64 lambda1)) (*.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)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 lambda1)) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 phi1 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 phi1 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 phi1 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 (pow.f64 phi1 3) (*.f64 -1/6 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 phi1 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))
(fma.f64 phi1 (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 (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 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (*.f64 phi1 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(fma.f64 (pow.f64 phi1 5) (*.f64 1/120 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (fma.f64 (pow.f64 phi1 3) (*.f64 -1/6 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 phi1 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))))
(fma.f64 (pow.f64 phi1 5) (*.f64 1/120 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 phi1 (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 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 (pow.f64 phi1 5) (*.f64 1/120 (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 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 (pow.f64 phi1 5) (+.f64 (*.f64 1/120 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (+.f64 (*.f64 (pow.f64 phi1 7) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 -1/5040 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))) (*.f64 phi1 (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(fma.f64 (pow.f64 phi1 5) (*.f64 1/120 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (fma.f64 (pow.f64 phi1 3) (*.f64 -1/6 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (fma.f64 (pow.f64 phi1 7) (*.f64 -1/5040 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))) (*.f64 phi1 (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(fma.f64 (pow.f64 phi1 5) (*.f64 1/120 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 (pow.f64 phi1 3) (*.f64 -1/6 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (fma.f64 phi1 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 -1/5040 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (pow.f64 phi1 7))))))
(+.f64 (*.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7)))) (*.f64 (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 (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (+.f64 phi1 (*.f64 -1/5040 (pow.f64 phi1 7)))) (*.f64 (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/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (sin.f64 lambda2) (sin.f64 lambda1) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))
(*.f64 (sin.f64 phi1) (fma.f64 (cos.f64 lambda2) (cos.f64 lambda1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))
(*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2)))
(*.f64 lambda1 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))
(fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1)))))
(*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1))))
(fma.f64 1/120 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2)))))
(fma.f64 1/120 (*.f64 (pow.f64 lambda1 5) (*.f64 (sin.f64 phi1) (sin.f64 lambda2))) (fma.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))))))
(fma.f64 1/120 (*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (pow.f64 lambda1 5))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(fma.f64 1/120 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 1/120 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5)))) (+.f64 (*.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/5040 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7)))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) lambda1)))))
(fma.f64 1/120 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 5))) (fma.f64 -1/6 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (fma.f64 -1/5040 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 7))) (*.f64 (sin.f64 phi1) (*.f64 lambda1 (sin.f64 lambda2))))))
(fma.f64 1/120 (*.f64 (pow.f64 lambda1 5) (*.f64 (sin.f64 phi1) (sin.f64 lambda2))) (fma.f64 -1/6 (*.f64 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (sin.f64 phi1))) (fma.f64 -1/5040 (*.f64 (pow.f64 lambda1 7) (*.f64 (sin.f64 phi1) (sin.f64 lambda2))) (*.f64 lambda1 (*.f64 (sin.f64 phi1) (sin.f64 lambda2))))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/5040 (pow.f64 lambda1 7)))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) (*.f64 1/120 (pow.f64 lambda1 5)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda2)) (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))))
(fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 -1/6 (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 3)))))
(*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.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 1/120 (*.f64 (pow.f64 lambda2 5) (*.f64 (sin.f64 phi1) (sin.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)) (*.f64 1/120 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (pow.f64 lambda2 5)))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 3))) (fma.f64 1/120 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 5))) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 3))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))))
(fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (pow.f64 lambda2 3))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 lambda2 7) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))) (+.f64 (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (pow.f64 lambda2 5) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 phi1) (sin.f64 lambda1))) (fma.f64 -1/5040 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (pow.f64 lambda2 7)) (fma.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 1/120 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (pow.f64 lambda2 5))))))
(+.f64 (fma.f64 1/120 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 5))) (*.f64 (sin.f64 phi1) (*.f64 lambda2 (sin.f64 lambda1)))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) (*.f64 -1/5040 (pow.f64 lambda2 7)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))) (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 (*.f64 -1/5040 (pow.f64 lambda2 7)) (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (*.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5)))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/5040 (pow.f64 lambda2 7)) (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 1/120 (pow.f64 lambda2 5))))) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/5040 (pow.f64 lambda2 7)) (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (*.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))
(*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (fma.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))))))
(fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) phi1)))
(*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (+.f64 (*.f64 -1/6 (pow.f64 phi1 3)) (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5)))))
(*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))
(+.f64 (*.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))) (+.f64 (*.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(fma.f64 -1/5040 (*.f64 (pow.f64 phi1 7) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (fma.f64 -1/6 (*.f64 (pow.f64 phi1 3) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (fma.f64 phi1 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/120 (*.f64 (pow.f64 phi1 5) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))))))
(+.f64 (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) phi1)) (*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (+.f64 (+.f64 phi1 (*.f64 1/120 (pow.f64 phi1 5))) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (*.f64 -1/6 (pow.f64 phi1 3)))))
(*.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (+.f64 (*.f64 -1/5040 (pow.f64 phi1 7)) (+.f64 (*.f64 1/120 (pow.f64 phi1 5)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3))))))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))
(*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)))
(*.f64 (sin.f64 lambda1) (*.f64 (sin.f64 phi1) (sin.f64 lambda2)))
(*.f64 (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (sin.f64 lambda1)))

localize15.0ms (0%)

Local error

Found 2 expressions with local error:

NewErrorProgram
0.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
3.6b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 23 to 8 computations (65.2% saved)

series2.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
phi2
@-inf
(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
lambda1
@inf
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))

rewrite61.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))))))))

simplify17.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))

localize32.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 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
3.6b
(cos.f64 (-.f64 lambda1 lambda2))
3.6b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 91 to 16 computations (82.4% saved)

localize54.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(*.f64 (cos.f64 phi1) (sin.f64 phi2))
1.4b
(+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1)))
7.4b
(sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))
7.5b
(sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2)))
Compiler

Compiled 181 to 43 computations (76.2% saved)

localize45.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))
0.2b
(*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2))))
0.2b
(*.f64 (sin.f64 lambda1) (sin.f64 lambda2))
3.6b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 149 to 23 computations (84.6% saved)

eval394.0ms (0.8%)

Compiler

Compiled 45319 to 9642 computations (78.7% saved)

prune358.0ms (0.7%)

Pruning

124 alts after pruning (122 fresh and 2 done)

PrunedKeptTotal
New1107411148
Fresh178198
Picked101
Done325
Total11281241252
Error
0.0b
Counts
1252 → 124
Alt Table
Click to see full alt table
StatusErrorProgram
37.4b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
29.9b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
32.8b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
14.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.9b
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
35.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
50.3b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
38.7b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
52.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.7b
(atan2.f64 (*.f64 (exp.f64 (log.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))))))
33.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
34.9b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
13.8b
(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) (+.f64 (/.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 2) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
11.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
13.7b
(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) (+.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
33.2b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
0.1b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
44.0b
(atan2.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3) (sin.f64 phi2))
42.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
16.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 (cos.f64 phi2) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 2)))))
33.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
41.3b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
23.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
37.9b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
25.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
30.8b
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
41.8b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
40.8b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.8b
(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) (fma.f64 (+.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
44.3b
(pow.f64 (cbrt.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 3)
13.7b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 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 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 3)))))
35.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
35.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
34.2b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.0b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
40.5b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
49.6b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
46.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
21.7b
(atan2.f64 (pow.f64 (cbrt.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))) 3) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
48.3b
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
40.8b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
38.3b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
30.6b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (log1p.f64 (expm1.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 lambda1) (cos.f64 lambda2)))))))
31.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
46.1b
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
10.9b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
32.8b
(atan2.f64 (*.f64 (sin.f64 (neg.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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
48.7b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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)))))))
16.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
44.9b
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
34.0b
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
40.4b
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
38.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
37.2b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
41.4b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
41.7b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
53.2b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
20.4b
(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) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1))))))
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 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) 1)))))
18.2b
(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 lambda2)))))
29.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 lambda1 lambda2))))))))
46.9b
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
35.8b
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
14.1b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
37.9b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.8b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
24.4b
(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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.0b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
40.1b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (-.f64 (+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.f64 (-.f64 lambda1 lambda2)))))))))
40.2b
(atan2.f64 (*.f64 (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))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
33.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
47.9b
(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))
36.8b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
41.8b
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda2))))))))
35.8b
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.0b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
8.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
35.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
48.3b
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
44.2b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
7.2b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
13.8b
(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) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))))))
25.6b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
44.9b
(-.f64 (+.f64 1 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))) 1)
33.9b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 lambda2))))))))
33.8b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
24.9b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
36.9b
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
44.3b
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
47.0b
(atan2.f64 (+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)) (sin.f64 phi2))
53.5b
(exp.f64 (log.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
39.8b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
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) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
29.1b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.2b
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
31.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
30.1b
(atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
44.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
44.0b
(log1p.f64 (expm1.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
14.1b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3)))))
33.5b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
28.2b
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
14.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
38.7b
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
52.8b
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
12.0b
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
12.3b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
24.2b
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
18.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
44.3b
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
12.9b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
30.1b
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
43.3b
(atan2.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))) (sin.f64 phi2))
37.4b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
35.5b
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
34.1b
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.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 lambda1) (cos.f64 lambda2)))))))
35.7b
(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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
46.5b
(atan2.f64 (-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2)))) (sin.f64 lambda2)) (sin.f64 phi2))
Compiler

Compiled 3678 to 2416 computations (34.3% saved)

regimes1.0s (2.1%)

Counts
208 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.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 (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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.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)) (*.f64 (cos.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (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 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 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) (+.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.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)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.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 (pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (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 (-.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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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) (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) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.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 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (cos.f64 phi1) 3))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.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))) (sin.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 (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)) (*.f64 (cos.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 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)) (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 (-.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 (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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (/.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 2)) (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 (-.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 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (-.f64 (+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.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 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (-.f64 (+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.f64 (-.f64 lambda1 lambda2)))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 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 (cos.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 (cos.f64 lambda2) (*.f64 (sin.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (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)))))))
(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 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.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 (cos.f64 phi2) (fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.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 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) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 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 (cos.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3))))
(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) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2)) (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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (cos.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) 1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (sin.f64 phi2) (*.f64 (cos.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 (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 lambda1) (sin.f64 lambda2)) (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (fma.f64 (+.f64 (pow.f64 (cbrt.f64 (cos.f64 (-.f64 lambda1 lambda2))) 3) (cos.f64 (+.f64 lambda1 lambda2))) 1/2 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))))))
(atan2.f64 (*.f64 (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))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.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 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.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 (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 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (*.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (sin.f64 phi1))))))
(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) (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)))))))
(atan2.f64 (*.f64 (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))) (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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (log1p.f64 (expm1.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 lambda1) (cos.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 (cos.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) (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 (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 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (pow.f64 (cbrt.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) 3)))))
(atan2.f64 (*.f64 (+.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)))) (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 (-.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 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (sin.f64 phi1)) (-.f64 (exp.f64 (log1p.f64 (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))))) 1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (+.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)))))))))
(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) (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)))))))
(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) (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 (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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (-.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 (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)))) (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 (-.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) (fma.f64 (*.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)) (cbrt.f64 (pow.f64 (sin.f64 phi1) 2))) (cbrt.f64 (sin.f64 phi1)) (*.f64 (sin.f64 phi1) (*.f64 (sin.f64 lambda1) (sin.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) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
Calls

7 calls:

148.0ms
lambda2
147.0ms
(-.f64 lambda1 lambda2)
132.0ms
phi2
123.0ms
(-.f64 lambda1 lambda2)
123.0ms
lambda1
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 6127 to 1136 computations (81.5% saved)

regimes2.0s (4.1%)

Counts
182 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.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 (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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.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)) (*.f64 (cos.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (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 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 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) (+.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.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)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.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 (pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (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 (-.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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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) (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) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.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 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (cos.f64 phi1) 3))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.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))) (sin.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 (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)) (*.f64 (cos.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 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)) (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 (-.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 (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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (/.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 2)) (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 (-.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 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (-.f64 (+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.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 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (-.f64 (+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.f64 (-.f64 lambda1 lambda2)))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 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 (cos.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 (cos.f64 lambda2) (*.f64 (sin.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (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)))))))
(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 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.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 (cos.f64 phi2) (fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.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 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) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 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 (cos.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3))))
(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) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2)) (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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.f64 (cos.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 (exp.f64 (log1p.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)))) 1))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (sin.f64 phi2) (*.f64 (cos.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)))))))
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) (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 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

7 calls:

475.0ms
lambda2
385.0ms
phi2
217.0ms
(-.f64 lambda1 lambda2)
213.0ms
lambda1
208.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
4.5b2lambda1
6.0b2lambda2
7.1b1phi1
3.2b3phi2
5.7b3(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)))))
5.9b2(-.f64 lambda1 lambda2)
5.9b2(-.f64 lambda1 lambda2)
Compiler

Compiled 4873 to 968 computations (80.1% saved)

bsearch457.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
222.0ms
2.1148975153045136e-19
1.9800954192395045e-13
232.0ms
-1.1932134333302521e-9
-2.173966942877114e-18
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes997.0ms (2.1%)

Counts
175 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.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 (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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.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)) (*.f64 (cos.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (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 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 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) (+.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.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)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.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 (pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (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 (-.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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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) (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) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.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 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (cos.f64 phi1) 3))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.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))) (sin.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 (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)) (*.f64 (cos.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 (+.f64 1 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 1)) (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 (-.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 (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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (/.f64 (-.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda1 lambda2))) 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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1)) (*.f64 1/2 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 (+.f64 lambda2 lambda1)))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (/.f64 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (+.f64 lambda2 lambda1))) 2)) (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 (-.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 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (-.f64 (+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.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 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (-.f64 (+.f64 (sin.f64 (+.f64 phi1 (-.f64 lambda1 lambda2))) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 phi1) (sin.f64 (-.f64 lambda1 lambda2)))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 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 (cos.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 (cos.f64 lambda2) (*.f64 (sin.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (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)))))))
(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 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (*.f64 (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2) (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (log1p.f64 (expm1.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)))) (*.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 (cos.f64 phi2) (fma.f64 (*.f64 (sin.f64 phi1) (sin.f64 lambda1)) (sin.f64 lambda2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (cos.f64 phi2)) (-.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 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) (sqrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 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 (cos.f64 phi2) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 3))))
(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) (sqrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 2)))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (sqrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 2)) (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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (pow.f64 (cbrt.f64 (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) 3)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

7 calls:

189.0ms
lambda2
162.0ms
lambda1
149.0ms
phi2
122.0ms
phi1
102.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
7.1b1lambda1
7.1b1lambda2
7.1b1phi1
7.1b1phi2
7.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)))))
7.1b1(-.f64 lambda1 lambda2)
7.1b1(-.f64 lambda1 lambda2)
Compiler

Compiled 4633 to 941 computations (79.7% saved)

regimes2.6s (5.3%)

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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.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 (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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.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)) (*.f64 (cos.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (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 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 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) (+.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.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)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.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 (pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (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 (-.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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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) (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) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.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 (cbrt.f64 (*.f64 (pow.f64 (sin.f64 phi2) 3) (pow.f64 (cos.f64 phi1) 3))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(atan2.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))) (sin.f64 phi2))
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) (cos.f64 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 (cos.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) (cos.f64 lambda2)))))
Calls

7 calls:

462.0ms
phi2
396.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)))))
368.0ms
lambda2
348.0ms
phi1
342.0ms
lambda1
Results
ErrorSegmentsBranch
7.1b3lambda1
7.0b3lambda2
7.5b3phi1
9.0b3phi2
9.1b5(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.4b3(-.f64 lambda1 lambda2)
9.4b3(-.f64 lambda1 lambda2)
Compiler

Compiled 3576 to 750 computations (79% saved)

bsearch703.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
329.0ms
7.915658516610205e-7
1.8647905332796473
370.0ms
-2.380271802632142e+19
-1189899571837314800.0
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.8s (5.8%)

Counts
138 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.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 (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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.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)) (*.f64 (cos.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (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 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 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) (+.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.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)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (exp.f64 (log1p.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) 1) (*.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 (pow.f64 (pow.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) 3) 1/3) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (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 (-.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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (log.f64 (exp.f64 (sin.f64 (+.f64 lambda2 (-.f64 phi1 lambda1))))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (exp.f64 (log.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (log.f64 (+.f64 1 (expm1.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(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 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (*.f64 (sin.f64 phi2) (sqrt.f64 (cos.f64 phi1))) (sqrt.f64 (cos.f64 phi1))) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (cos.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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (sin.f64 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 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

7 calls:

505.0ms
lambda1
467.0ms
phi2
421.0ms
(-.f64 lambda1 lambda2)
420.0ms
(-.f64 lambda1 lambda2)
320.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
8.5b3lambda1
10.3b2lambda2
7.5b3phi1
10.2b3phi2
9.0b5(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.7b3(-.f64 lambda1 lambda2)
9.7b3(-.f64 lambda1 lambda2)
Compiler

Compiled 3370 to 731 computations (78.3% saved)

bsearch610.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
214.0ms
5.677772830779251e-75
9.943038229403776e-74
394.0ms
-0.01198485525588481
-4.2211392644820056e-7
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes2.1s (4.4%)

Counts
124 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.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 (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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.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)) (*.f64 (cos.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (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 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 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) (+.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.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)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.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 (cos.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 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

7 calls:

333.0ms
lambda1
302.0ms
(-.f64 lambda1 lambda2)
290.0ms
(-.f64 lambda1 lambda2)
288.0ms
lambda2
285.0ms
phi1
Results
ErrorSegmentsBranch
8.7b3lambda1
9.7b3lambda2
8.1b3phi1
10.6b3phi2
9.4b5(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.9b3(-.f64 lambda1 lambda2)
9.9b3(-.f64 lambda1 lambda2)
Compiler

Compiled 2925 to 637 computations (78.2% saved)

bsearch718.0ms (1.5%)

Algorithm
binary-search
Steps
TimeLeftRight
261.0ms
5.677772830779251e-75
9.943038229403776e-74
453.0ms
-0.01198485525588481
-4.2211392644820056e-7
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes934.0ms (1.9%)

Counts
123 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.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 (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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.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)) (*.f64 (cos.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (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 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 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) (+.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 (sin.f64 lambda1) (*.f64 lambda2 (-.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 lambda1))) (cos.f64 lambda1)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (fma.f64 (sin.f64 lambda1) (cos.f64 lambda2) (*.f64 (neg.f64 (cos.f64 lambda1)) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (expm1.f64 (log1p.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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) 3)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 2) (*.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 (pow.f64 (cbrt.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 3) (*.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)) (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1)) 3)))))
(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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.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))) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

6 calls:

260.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)))))
214.0ms
phi2
154.0ms
lambda1
85.0ms
lambda2
78.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
12.7b2lambda1
13.9b1lambda2
13.9b1phi1
10.8b3phi2
11.1b5(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)))))
13.9b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2890 to 630 computations (78.2% saved)

bsearch758.0ms (1.6%)

Algorithm
binary-search
Steps
TimeLeftRight
476.0ms
2.1148975153045136e-19
1.9800954192395045e-13
281.0ms
-1.1932134333302521e-9
-2.173966942877114e-18
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes736.0ms (1.5%)

Counts
100 → 5
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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.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 (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)) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (-.f64 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (+.f64 1 (*.f64 (cos.f64 phi1) (sin.f64 phi2))) 1) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1)))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda2 lambda1)) (sin.f64 (-.f64 lambda1 lambda2))))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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) (+.f64 phi2 (*.f64 -1/6 (pow.f64 phi2 3)))) (*.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)) (*.f64 (cos.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)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 lambda2)) (sin.f64 (+.f64 lambda2 phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 phi1 lambda1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.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 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (-.f64 phi1 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 1 (/.f64 2 (+.f64 (sin.f64 (+.f64 phi1 lambda2)) (sin.f64 (+.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 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.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 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) 1))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (pow.f64 (sqrt.f64 (sin.f64 phi2)) 2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (cbrt.f64 (pow.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 3)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.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 (*.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 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2))
(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))))))
Calls

6 calls:

252.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)))))
116.0ms
lambda2
91.0ms
(-.f64 lambda1 lambda2)
66.0ms
lambda1
63.0ms
phi1
Results
ErrorSegmentsBranch
13.9b1lambda1
13.9b1lambda2
13.9b1phi1
13.9b1phi2
11.2b5(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)))))
13.9b1(-.f64 lambda1 lambda2)
Compiler

Compiled 2271 to 543 computations (76.1% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.5707963267948966
1.572409635079664
0.0ms
1.4985657894480167
1.554522872722923
0.0ms
-1.5707963267948966
-1.57079632678312
0.0ms
-1.6156514597912786
-1.574339942622202
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes541.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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))))
Outputs
(atan2.f64 (*.f64 (sin.f64 lambda1) (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 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

6 calls:

138.0ms
lambda1
128.0ms
lambda2
109.0ms
phi2
46.0ms
(-.f64 lambda1 lambda2)
42.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
13.4b3lambda1
13.8b3lambda2
18.2b1phi1
15.8b3phi2
18.2b1(-.f64 lambda1 lambda2)
18.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1414 to 332 computations (76.5% saved)

bsearch568.0ms (1.2%)

Algorithm
binary-search
Steps
TimeLeftRight
292.0ms
1.6723338564822422e-9
325049605.0133199
274.0ms
-0.00305209358192465
-9.765950997738696e-8
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes667.0ms (1.4%)

Counts
64 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.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 (cos.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 (cos.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 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
Calls

6 calls:

144.0ms
phi2
115.0ms
lambda2
114.0ms
(-.f64 lambda1 lambda2)
95.0ms
lambda1
88.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
13.9b3lambda1
13.8b3lambda2
18.2b1phi1
15.8b3phi2
18.2b1(-.f64 lambda1 lambda2)
18.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1252 to 317 computations (74.7% saved)

bsearch628.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
298.0ms
7.915658516610205e-7
1.8647905332796473
329.0ms
-2373492058439932.5
-6.512587427044244e-10
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes536.0ms (1.1%)

Counts
63 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

6 calls:

156.0ms
lambda1
111.0ms
lambda2
98.0ms
phi2
53.0ms
(-.f64 lambda1 lambda2)
49.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
15.4b3lambda1
17.1b3lambda2
18.2b1phi1
15.8b3phi2
18.2b1(-.f64 lambda1 lambda2)
18.2b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1230 to 315 computations (74.4% saved)

bsearch464.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
225.0ms
1.6723338564822422e-9
325049605.0133199
237.0ms
-1077386988484353400.0
-68386775120983350.0
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes222.0ms (0.5%)

Counts
62 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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) phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))) 2) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))) 2))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 lambda1 (+.f64 lambda2 phi2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi2))))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (sin.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1)))) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (log.f64 (exp.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sqrt.f64 (pow.f64 (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1)))) 2)))
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

5 calls:

43.0ms
(-.f64 lambda1 lambda2)
41.0ms
lambda2
38.0ms
lambda1
36.0ms
phi1
35.0ms
phi2
Results
ErrorSegmentsBranch
21.5b1lambda1
21.5b1lambda2
21.5b1phi1
21.5b1phi2
21.5b1(-.f64 lambda1 lambda2)
Compiler

Compiled 1201 to 308 computations (74.4% saved)

regimes340.0ms (0.7%)

Counts
46 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda1)))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (*.f64 (sin.f64 phi1) (cos.f64 phi2)) (+.f64 (*.f64 (sin.f64 lambda2) lambda1) (cos.f64 lambda2)))))
Outputs
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

6 calls:

88.0ms
lambda2
69.0ms
lambda1
65.0ms
phi2
43.0ms
phi1
29.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
21.1b3lambda1
21.5b3lambda2
23.9b1phi1
21.4b3phi2
23.9b1(-.f64 lambda1 lambda2)
23.9b1(-.f64 lambda1 lambda2)
Compiler

Compiled 784 to 220 computations (71.9% saved)

bsearch451.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
227.0ms
325049605.0133199
400593235471.0308
223.0ms
-1077386988484353400.0
-68386775120983350.0
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes724.0ms (1.5%)

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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (+.f64 (-.f64 lambda1 lambda2) (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (/.f64 1 (/.f64 2 (+.f64 (sin.f64 (-.f64 phi1 (-.f64 lambda1 lambda2))) (sin.f64 (+.f64 (-.f64 lambda1 lambda2) phi1))))))))
(atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
Calls

6 calls:

168.0ms
(-.f64 lambda1 lambda2)
139.0ms
lambda1
124.0ms
(-.f64 lambda1 lambda2)
105.0ms
phi2
94.0ms
phi1
Results
ErrorSegmentsBranch
25.9b6lambda1
28.4b3lambda2
23.8b3phi1
23.5b3phi2
27.2b5(-.f64 lambda1 lambda2)
27.2b5(-.f64 lambda1 lambda2)
Compiler

Compiled 664 to 202 computations (69.6% saved)

bsearch500.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
255.0ms
3.0016094245478093e-26
8.377708762697971e-26
244.0ms
-0.0017581173019192615
-0.00011516612499914004
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes498.0ms (1%)

Counts
36 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) 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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 phi1 (*.f64 -1/6 (pow.f64 phi1 3)))))))
(atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))
Calls

6 calls:

95.0ms
(-.f64 lambda1 lambda2)
92.0ms
(-.f64 lambda1 lambda2)
88.0ms
lambda1
86.0ms
lambda2
65.0ms
phi2
Results
ErrorSegmentsBranch
28.0b5lambda1
28.7b5lambda2
23.8b3phi1
23.6b3phi2
27.2b5(-.f64 lambda1 lambda2)
27.2b5(-.f64 lambda1 lambda2)
Compiler

Compiled 561 to 175 computations (68.8% saved)

bsearch556.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
321.0ms
3.0016094245478093e-26
8.377708762697971e-26
234.0ms
-0.0017581173019192615
-0.00011516612499914004
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes371.0ms (0.8%)

Counts
31 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.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)) (sin.f64 phi2))
Calls

5 calls:

103.0ms
(-.f64 lambda1 lambda2)
75.0ms
lambda2
72.0ms
phi2
56.0ms
phi1
47.0ms
lambda1
Results
ErrorSegmentsBranch
30.9b2lambda1
28.8b5lambda2
27.4b3phi1
25.3b3phi2
28.9b3(-.f64 lambda1 lambda2)
Compiler

Compiled 440 to 135 computations (69.3% saved)

bsearch475.0ms (1%)

Algorithm
binary-search
Steps
TimeLeftRight
231.0ms
1.6066340324505707e-11
2.9370450170420375e-5
243.0ms
-3.8557688746113223
-0.007347881940835113
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes294.0ms (0.6%)

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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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)) (sin.f64 phi2))
Calls

6 calls:

67.0ms
lambda2
48.0ms
lambda1
44.0ms
phi1
43.0ms
phi2
42.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
30.9b2lambda1
28.8b5lambda2
27.4b3phi1
25.5b3phi2
32.3b3(-.f64 lambda1 lambda2)
32.3b3(-.f64 lambda1 lambda2)
Compiler

Compiled 407 to 134 computations (67.1% saved)

bsearch460.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
222.0ms
1.6066340324505707e-11
2.9370450170420375e-5
237.0ms
-294167955.97262716
-255751.27123158396
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes349.0ms (0.7%)

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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.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 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2)))))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (sin.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))
(atan2.f64 (sin.f64 lambda1) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))
Calls

6 calls:

74.0ms
lambda2
73.0ms
(-.f64 lambda1 lambda2)
62.0ms
(-.f64 lambda1 lambda2)
47.0ms
lambda1
43.0ms
phi2
Results
ErrorSegmentsBranch
30.5b3lambda1
29.3b5lambda2
27.4b3phi1
25.5b3phi2
33.2b3(-.f64 lambda1 lambda2)
33.2b3(-.f64 lambda1 lambda2)
Compiler

Compiled 351 to 130 computations (63% saved)

bsearch536.0ms (1.1%)

Algorithm
binary-search
Steps
TimeLeftRight
269.0ms
1.6066340324505707e-11
2.9370450170420375e-5
267.0ms
-3.8557688746113223
-0.007347881940835113
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes76.0ms (0.2%)

Counts
18 → 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)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2)))))))
(log.f64 (exp.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))))
(atan2.f64 (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (sin.f64 phi2))
(exp.f64 (log.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))))
(expm1.f64 (log1p.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (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)
(atan2.f64 (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2)) (sin.f64 phi2))
(cbrt.f64 (pow.f64 (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)) 3))
Outputs
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2))
(atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2))
Calls

5 calls:

20.0ms
phi2
13.0ms
lambda2
13.0ms
lambda1
12.0ms
(-.f64 lambda1 lambda2)
10.0ms
phi1
Results
ErrorSegmentsBranch
34.9b1lambda1
34.9b1lambda2
34.9b1phi1
31.8b2phi2
34.9b1(-.f64 lambda1 lambda2)
Compiler

Compiled 218 to 92 computations (57.8% saved)

bsearch248.0ms (0.5%)

Algorithm
binary-search
Steps
TimeLeftRight
247.0ms
6523.057648943081
27563686852.67134
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes57.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
11.0ms
lambda2
10.0ms
phi2
7.0ms
(-.f64 lambda1 lambda2)
5.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
35.8b1lambda1
35.8b1lambda2
33.6b3phi1
34.0b2phi2
35.8b1(-.f64 lambda1 lambda2)
35.8b1(-.f64 lambda1 lambda2)
Compiler

Compiled 102 to 57 computations (44.1% saved)

bsearch423.0ms (0.9%)

Algorithm
binary-search
Steps
TimeLeftRight
210.0ms
4.423513818701087e-7
0.008134936073214052
213.0ms
-0.01198485525588481
-4.2211392644820056e-7
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes43.0ms (0.1%)

Counts
6 → 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))
Outputs
(atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2))
(atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2))
Calls

5 calls:

11.0ms
phi2
10.0ms
lambda2
9.0ms
lambda1
5.0ms
phi1
5.0ms
(-.f64 lambda1 lambda2)
Results
ErrorSegmentsBranch
42.6b2lambda1
42.8b2lambda2
44.0b1phi1
42.7b2phi2
44.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 82 to 46 computations (43.9% saved)

bsearch215.0ms (0.4%)

Algorithm
binary-search
Steps
TimeLeftRight
215.0ms
-1077386988484353400.0
-68386775120983350.0
Compiler

Compiled 35 to 23 computations (34.3% saved)

regimes34.0ms (0.1%)

Accuracy

Total -14.0b remaining (-32.9%)

Threshold costs -14.0b (-32.9%)

Counts
4 → 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)
Outputs
(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))
Calls

5 calls:

11.0ms
lambda1
8.0ms
phi2
4.0ms
(-.f64 lambda1 lambda2)
4.0ms
phi1
4.0ms
lambda2
Results
ErrorSegmentsBranch
42.7b3lambda1
44.0b1lambda2
44.0b1phi1
42.7b2phi2
44.0b1(-.f64 lambda1 lambda2)
Compiler

Compiled 60 to 38 computations (36.7% saved)

bsearch611.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
312.0ms
7.619076691287185e-30
2.5876632944396388e-23
299.0ms
-5.615107428216806e-42
-2.9632258566994677e-43
Compiler

Compiled 35 to 23 computations (34.3% saved)

simplify118.0ms (0.2%)

Algorithm
egg-herbie
Rules
61×*-commutative_binary64
49×+-commutative_binary64
44×sub-neg_binary64
33×distribute-rgt-neg-in_binary64
29×neg-sub0_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01922354
12882352
23902352
34532352
44902352
55172352
65262352
75302352
85312352
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))
(if (<=.f64 phi2 -5770026111455843/4835703278458516698824704) (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) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 8784940579870991/41538374868278621028243970633760768) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.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) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda2 -12479479428584004799954944/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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda2 7476128093736337/9444732965739290427392) (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 (cos.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) (cos.f64 lambda2)))))))
(if (<=.f64 phi1 -221081557665759904/18446744073709551616) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi1 5782913760875915/1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi1 -221081557665759904/18446744073709551616) (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)))))) (if (<=.f64 phi1 5782913760875915/1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -5770026111455843/4835703278458516698824704) (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)))))) (if (<=.f64 phi2 8784940579870991/41538374868278621028243970633760768) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 (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))))) -3602879701896397/2251799813685248) (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)))))) (if (<=.f64 (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))))) -1768559438001597/1125899906842624) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (if (<=.f64 (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))))) 3/2) (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)))))) (if (<=.f64 (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))))) 1769914653556605/1125899906842624) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (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))))))))))
(if (<=.f64 lambda1 -56301189194775496/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 8086910312468353/4835703278458516698824704) (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 lambda2))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -4746984116879865/2) (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 lambda2))))) (if (<=.f64 lambda2 7476128093736337/9444732965739290427392) (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 lambda1))))) (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 lambda2)))))))
(if (<=.f64 lambda1 -1077386988484353408) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 8086910312468353/4835703278458516698824704) (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 lambda2))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda1 -1077386988484353408) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 1396077423109926656/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -32431539920065364/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))) (if (<=.f64 phi2 2614770584466751/87112285931760246646623899502532662132736) (atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))))
(if (<=.f64 phi2 -32431539920065364/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))) (if (<=.f64 phi2 2614770584466751/87112285931760246646623899502532662132736) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))))
(if (<=.f64 phi2 -4341209816731577/1125899906842624) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 1272906622239416576/79228162514264337593543950336) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.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)) (sin.f64 phi2))))
(if (<=.f64 phi2 -1263441750433601536/4294967296) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 1272906622239416576/79228162514264337593543950336) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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)) (sin.f64 phi2))))
(if (<=.f64 phi2 -4341209816731577/1125899906842624) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 1272906622239416576/79228162514264337593543950336) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2))))))) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi2 7172177733666095/1099511627776) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2)))
(if (<=.f64 phi1 -221081557665759904/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 4177890678788945/9444732965739290427392) (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 lambda1 -1077386988484353408) (atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)))
(if (<=.f64 lambda1 -35246600582042356/6277101735386680763835789423207666416102355444464034512896) (atan2.f64 (sin.f64 lambda1) (sin.f64 phi2)) (if (<=.f64 lambda1 11135293059265939456/1461501637330902918203684832716283019655932542976) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))))
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
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 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 lambda1) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (cos.f64 lambda1)))))))
(if (<=.f64 phi2 -5770026111455843/4835703278458516698824704) (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) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 8784940579870991/41538374868278621028243970633760768) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -5770026111455843/4835703278458516698824704) (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) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 8784940579870991/41538374868278621028243970633760768) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (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))))))) (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) (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) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda2 -12479479428584004799954944/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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (if (<=.f64 lambda2 7476128093736337/9444732965739290427392) (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 (cos.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) (cos.f64 lambda2)))))))
(if (<=.f64 lambda2 -23802718026321420288) (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 (cos.f64 lambda2) (sin.f64 phi1))))) (if (<=.f64 lambda2 7476128093736337/9444732965739290427392) (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 (cos.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 (cos.f64 lambda2) (sin.f64 phi1)))))))
(if (<=.f64 phi1 -221081557665759904/18446744073709551616) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi1 5782913760875915/1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi1 -6908798677054997/576460752303423488) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi1 5782913760875915/1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (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 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi1 -221081557665759904/18446744073709551616) (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)))))) (if (<=.f64 phi1 5782913760875915/1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi1 -6908798677054997/576460752303423488) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi1 5782913760875915/1018517988167243043134222844204689080525734196832968125318070224677190649881668353091698688) (atan2.f64 (*.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -5770026111455843/4835703278458516698824704) (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)))))) (if (<=.f64 phi2 8784940579870991/41538374868278621028243970633760768) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.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)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -5770026111455843/4835703278458516698824704) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 phi2 8784940579870991/41538374868278621028243970633760768) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.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 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 (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))))) -3602879701896397/2251799813685248) (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)))))) (if (<=.f64 (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))))) -1768559438001597/1125899906842624) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (if (<=.f64 (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))))) 3/2) (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)))))) (if (<=.f64 (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))))) 1769914653556605/1125899906842624) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (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))))))))))
(if (<=.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) -3602879701896397/2251799813685248) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) -1768559438001597/1125899906842624) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (if (<=.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) 3/2) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (sin.f64 phi1))))) 1769914653556605/1125899906842624) (atan2.f64 (-.f64 (*.f64 (cos.f64 lambda2) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (sin.f64 lambda2))) (sin.f64 phi2)) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))))
(if (<=.f64 lambda1 -56301189194775496/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 8086910312468353/4835703278458516698824704) (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 lambda2))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda1 -7037648649346937/2305843009213693952) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 8086910312468353/4835703278458516698824704) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -4746984116879865/2) (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 lambda2))))) (if (<=.f64 lambda2 7476128093736337/9444732965739290427392) (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 lambda1))))) (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 lambda2)))))))
(if (<=.f64 lambda2 -4746984116879865/2) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (if (<=.f64 lambda2 7476128093736337/9444732965739290427392) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (sin.f64 phi1))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1)))))))
(if (<=.f64 lambda1 -1077386988484353408) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 8086910312468353/4835703278458516698824704) (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 lambda2))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda1 -1077386988484353408) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 8086910312468353/4835703278458516698824704) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) (sin.f64 phi2)) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(if (<=.f64 lambda1 -1077386988484353408) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 1396077423109926656/4294967296) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 lambda2))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda1 -1077386988484353408) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 lambda1 5453427434023151/16777216) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (sin.f64 phi1))))) (atan2.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -32431539920065364/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))) (if (<=.f64 phi2 2614770584466751/87112285931760246646623899502532662132736) (atan2.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))))
(if (<=.f64 phi2 -8107884980016341/4611686018427387904) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 phi2 2614770584466751/87112285931760246646623899502532662132736) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2)))) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))))))
(if (<=.f64 phi2 -32431539920065364/18446744073709551616) (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1)))) (if (<=.f64 phi2 2614770584466751/87112285931760246646623899502532662132736) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.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 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) phi1))))))
(if (<=.f64 phi2 -8107884980016341/4611686018427387904) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 phi2 2614770584466751/87112285931760246646623899502532662132736) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 phi1 (cos.f64 (-.f64 lambda2 lambda1))))))))
(if (<=.f64 phi2 -4341209816731577/1125899906842624) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 1272906622239416576/79228162514264337593543950336) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 (cos.f64 phi1) phi2) (*.f64 (cos.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)) (sin.f64 phi2))))
(if (<=.f64 phi2 -4341209816731577/1125899906842624) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2)) (if (<=.f64 phi2 4972291493122721/309485009821345068724781056) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (*.f64 phi2 (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))))
(if (<=.f64 phi2 -1263441750433601536/4294967296) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 1272906622239416576/79228162514264337593543950336) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.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)) (sin.f64 phi2))))
(if (<=.f64 phi2 -616914917203907/2097152) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2)) (if (<=.f64 phi2 4972291493122721/309485009821345068724781056) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 (sin.f64 phi2) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))))
(if (<=.f64 phi2 -4341209816731577/1125899906842624) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2)) (if (<=.f64 phi2 1272906622239416576/79228162514264337593543950336) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2))))))) (atan2.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (cos.f64 phi2)) (sin.f64 phi2))))
(if (<=.f64 phi2 -4341209816731577/1125899906842624) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2)) (if (<=.f64 phi2 4972291493122721/309485009821345068724781056) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (sin.f64 phi1) (+.f64 -1 (*.f64 phi2 (*.f64 phi2 1/2))))))) (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 phi2))))
(if (<=.f64 phi2 7172177733666095/1099511627776) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi1))) phi2)) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2)))
(if (<=.f64 phi2 7172177733666095/1099511627776) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (+.f64 phi2 (neg.f64 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2)))
(if (<=.f64 phi2 7172177733666095/1099511627776) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (-.f64 phi2 (*.f64 (sin.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2)))
(if (<=.f64 phi1 -221081557665759904/18446744073709551616) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 4177890678788945/9444732965739290427392) (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 -6908798677054997/576460752303423488) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (neg.f64 (sin.f64 phi1)))) (if (<=.f64 phi1 4177890678788945/9444732965739290427392) (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 -6908798677054997/576460752303423488) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (*.f64 (sin.f64 phi1) (neg.f64 (cos.f64 (-.f64 lambda2 lambda1))))) (if (<=.f64 phi1 4177890678788945/9444732965739290427392) (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)))))))
(if (<=.f64 lambda1 -1077386988484353408) (atan2.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 phi2)) (atan2.f64 (sin.f64 (-.f64 lambda1 lambda2)) (sin.f64 phi2)))
(if (<=.f64 lambda1 -35246600582042356/6277101735386680763835789423207666416102355444464034512896) (atan2.f64 (sin.f64 lambda1) (sin.f64 phi2)) (if (<=.f64 lambda1 11135293059265939456/1461501637330902918203684832716283019655932542976) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))))
(if (<=.f64 lambda1 -8811650145510589/1569275433846670190958947355801916604025588861116008628224) (atan2.f64 (sin.f64 lambda1) (sin.f64 phi2)) (if (<=.f64 lambda1 5437154814094697/713623846352979940529142984724747568191373312) (atan2.f64 (sin.f64 (neg.f64 lambda2)) (sin.f64 phi2)) (atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))))
(atan2.f64 (sin.f64 lambda1) (sin.f64 phi2))
Compiler

Compiled 1548 to 615 computations (60.3% saved)

soundness125.0ms (0.3%)

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
Compiler

Compiled 84 to 51 computations (39.3% saved)

end240.0ms (0.5%)

Compiler

Compiled 1460 to 216 computations (85.2% saved)

Profiling

Loading profile data...