Details

Time bar (total: 20.1s)

analyze842.0ms (4.2%)

Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.8%0.2%0%0%0%0
0%0%99.8%0.2%0%0%0%1
0%0%99.8%0.2%0%0%0%2
0%0%99.8%0.2%0%0%0%3
0%0%99.8%0.2%0%0%0%4
0%0%99.8%0.2%0%0%0%5
0%0%99.8%0.2%0%0%0%6
0%0%99.8%0.2%0%0%0%7
0%0%99.8%0.2%0%0%0%8
9.4%9.4%90.4%0.2%0%0%0%9
9.4%9.4%90.4%0.2%0%0%0%10
10.9%10.9%88.9%0.2%0%0%0%11
10.9%10.9%88.9%0.2%0%0%0%12
Compiler

Compiled 25 to 15 computations (40% saved)

sample8.0s (39.6%)

Results
5.7s4580×body1024valid
1.4s1810×body512valid
670.0ms1749×body256valid
264.0ms117×body2048valid
Bogosity

preprocess151.0ms (0.8%)

Algorithm
egg-herbie
Rules
732×fma-def_binary64
699×fma-neg_binary64
225×unsub-neg_binary64
187×cancel-sign-sub-inv_binary64
172×distribute-rgt-in_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
062224
1100210
2130210
3164210
4214210
5381210
6543210
7955210
81387210
91781210
102310210
112976210
123637210
133885210
143989210
154060210
164087210
044
Stop Event
saturated
saturated
Calls
Call 1
Inputs
0
1
2
3
Outputs
0
1
2
3
Call 2
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 phi1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (+.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 phi1 lambda2))))))
(+.f64 phi2 (atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 (-.f64 phi2 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 (-.f64 lambda1 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi1) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 lambda2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda2 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda2 lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))
(+.f64 phi1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (+.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 phi1 lambda2))))))
(+.f64 phi1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 phi1 lambda2))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 phi1 lambda2)) (cos.f64 lambda1))))
(+.f64 phi2 (atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda1) (cos.f64 (-.f64 phi2 lambda2))))))
(+.f64 phi2 (atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (fma.f64 (cos.f64 lambda1) (cos.f64 (-.f64 phi2 lambda2)) (cos.f64 phi1))))
(+.f64 phi2 (atan2.f64 (*.f64 (cos.f64 lambda1) (sin.f64 (-.f64 phi2 lambda2))) (fma.f64 (cos.f64 lambda1) (cos.f64 (-.f64 lambda2 phi2)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 phi1))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 phi1)) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 (-.f64 lambda1 phi2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (fma.f64 (cos.f64 lambda2) (cos.f64 (-.f64 lambda1 phi2)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 lambda2) (sin.f64 (-.f64 lambda1 phi2))) (fma.f64 (cos.f64 lambda2) (cos.f64 (-.f64 phi2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi1) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (+.f64 (cos.f64 phi2) (*.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (fma.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (fma.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))))
Compiler

Compiled 28 to 18 computations (35.7% saved)

simplify41.0ms (0.2%)

Algorithm
egg-herbie
Rules
284×fma-def_binary64
141×fma-neg_binary64
42×distribute-rgt-in_binary64
39×cancel-sign-sub-inv_binary64
36×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01532
12130
22830
33530
44530
57130
611530
716930
824430
933130
1045830
1160430
1265030
1375430
1485030
1587230
1690730
1795130
1899430
19101530
20101730
Stop Event
saturated
Counts
1 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))

eval1.0ms (0%)

Compiler

Compiled 43 to 17 computations (60.5% saved)

prune2.0ms (0%)

Pruning

3 alts after pruning (3 fresh and 0 done)

PrunedKeptTotal
New022
Fresh011
Picked000
Done000
Total033
Error
0.6b
Counts
3 → 2
Alt Table
Click to see full alt table
StatusErrorProgram
0.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))
0.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Compiler

Compiled 47 to 27 computations (42.6% saved)

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))
0.5b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 85 to 14 computations (83.5% saved)

series22.0ms (0.1%)

Counts
4 → 128
Calls

36 calls:

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

rewrite99.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
794×log-prod_binary64
558×fma-def_binary64
307×expm1-udef_binary64
307×log1p-udef_binary64
300×fma-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

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

simplify112.0ms (0.6%)

Algorithm
egg-herbie
Rules
885×fma-def_binary64
621×fma-neg_binary64
512×associate-*l*_binary64
485×associate-*r*_binary64
409×distribute-lft-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01532704
14392635
212662538
348062534
Stop Event
node limit
Counts
305 → 253
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 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
Outputs
(sin.f64 (neg.f64 lambda2))
(neg.f64 (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (sin.f64 lambda2))
(-.f64 (*.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2))))) (sin.f64 lambda2))
(fma.f64 lambda1 (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))) (neg.f64 (sin.f64 lambda2)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 -1/2 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (sin.f64 lambda2)))
(+.f64 (-.f64 (*.f64 lambda1 (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))) (sin.f64 lambda2)) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (-.f64 (*.f64 lambda1 (*.f64 lambda1 (*.f64 1/2 (sin.f64 lambda2)))) (sin.f64 lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1)) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))
(-.f64 (fma.f64 (*.f64 (*.f64 -1/2 lambda2) lambda2) (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2))))))
(+.f64 (fma.f64 (*.f64 (*.f64 -1/2 lambda2) lambda2) (sin.f64 lambda1) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(fma.f64 (cos.f64 lambda1) (fma.f64 lambda2 -1 (*.f64 1/6 (pow.f64 lambda2 3))) (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(fma.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.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 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))
(+.f64 (cos.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))
(+.f64 (cos.f64 lambda2) (-.f64 (*.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))
(fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))
(+.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 (*.f64 -1/2 (*.f64 lambda1 lambda1)) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (pow.f64 lambda1 3)) (cos.f64 lambda2)))
(fma.f64 (pow.f64 lambda1 3) (*.f64 -1/6 (sin.f64 lambda2)) (fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(+.f64 (*.f64 lambda1 (fma.f64 (cos.f64 lambda2) (*.f64 -1/2 lambda1) (sin.f64 lambda2))) (fma.f64 (pow.f64 lambda1 3) (*.f64 -1/6 (sin.f64 lambda2)) (cos.f64 lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (fma.f64 -1 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (-.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 (*.f64 -1/2 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 (*.f64 -1/2 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)))
(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 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1)
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) 1)
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) 1))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 1/24 (pow.f64 phi1 4)))))
(+.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1) (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 1/24 (pow.f64 phi1 4))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1))))))
(+.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1)))) (fma.f64 -1/720 (pow.f64 phi1 6) 1))
(+.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) 1)))
(+.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2)) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))
(fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2))))
(+.f64 (cos.f64 phi1) (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2)))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (*.f64 (cos.f64 lambda2) (cos.f64 phi2)))))
(+.f64 (-.f64 (*.f64 (cos.f64 lambda2) (cos.f64 phi2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2)))) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (fma.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 (*.f64 1/6 (neg.f64 (sin.f64 lambda2))) (*.f64 (pow.f64 lambda1 3) (cos.f64 phi2)))))))
(+.f64 (-.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (pow.f64 lambda1 3) (cos.f64 phi2)) 1/6))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2)))) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) (cos.f64 phi2))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 (cos.f64 phi2) (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (pow.f64 lambda1 3) (*.f64 -1/6 (sin.f64 lambda2))))) (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (cos.f64 lambda2)))))
(+.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 lambda1 3) 1/6) lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1))
(fma.f64 (cos.f64 lambda1) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 (cos.f64 phi2)))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(+.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (fma.f64 lambda2 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (cos.f64 phi1)))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) (cos.f64 phi2)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (sin.f64 lambda1) (cos.f64 phi2))) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 (cos.f64 phi2)))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (cos.f64 phi2))) (*.f64 (*.f64 (sin.f64 lambda1) (cos.f64 phi2)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))

localize26.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
0.5b
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 75 to 13 computations (82.7% saved)

series136.0ms (0.7%)

Counts
2 → 56
Calls

24 calls:

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

rewrite69.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
679×log-prod_binary64
671×prod-diff_binary64
286×fma-def_binary64
268×expm1-udef_binary64
268×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify84.0ms (0.4%)

Algorithm
egg-herbie
Rules
541×fma-def_binary64
431×associate-+r+_binary64
399×neg-sub0_binary64
383×neg-mul-1_binary64
359×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01141213
13151167
28611110
333281082
468361082
Stop Event
node limit
Counts
106 → 89
Calls
Call 1
Inputs
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi1)))
Outputs
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 -1/2 (*.f64 phi2 phi2))))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4)))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (cos.f64 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) lambda1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 (*.f64 (neg.f64 (neg.f64 (sin.f64 lambda2))) (cos.f64 phi2)) lambda1)) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (pow.f64 lambda1 3)))))))
(+.f64 (-.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) 1/6))) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (+.f64 (neg.f64 lambda1) (*.f64 1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (fma.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 phi2) (*.f64 -1/2 (cos.f64 lambda1))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2))))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3))) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2))) (cos.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 1)
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) 1)
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1)
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 phi1 (*.f64 phi1 -1/2))))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 1/24 (pow.f64 phi1 4)))))
(+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))
(+.f64 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (fma.f64 phi1 (*.f64 phi1 -1/2) 1)) (*.f64 1/24 (pow.f64 phi1 4)))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1))))))
(+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 1/24 (pow.f64 phi1 4)))) (fma.f64 -1/720 (pow.f64 phi1 6) 1))
(+.f64 (fma.f64 phi1 (*.f64 phi1 -1/2) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) 1)))
(+.f64 (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 phi1 (*.f64 phi1 -1/2))) (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (fma.f64 (cos.f64 phi2) (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 (fma.f64 -1 lambda1 lambda2)))) (fma.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) (cos.f64 phi1)))

eval168.0ms (0.8%)

Compiler

Compiled 13861 to 3153 computations (77.3% saved)

prune138.0ms (0.7%)

Pruning

30 alts after pruning (30 fresh and 0 done)

PrunedKeptTotal
New44830478
Fresh000
Picked101
Done101
Total45030480
Error
0.4b
Counts
480 → 30
Alt Table
Click to see full alt table
StatusErrorProgram
13.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1)))
0.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
0.7b
(+.f64 lambda1 (log1p.f64 (expm1.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
13.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
13.5b
(+.f64 lambda1 (expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
10.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
17.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
3.3b
(+.f64 lambda1 (cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) 3)))
14.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
0.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (log.f64 (*.f64 (cbrt.f64 (exp.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))) (cbrt.f64 (exp.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))))) (log.f64 (cbrt.f64 (exp.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))))))
24.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
0.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (log.f64 (exp.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
0.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
3.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2) (pow.f64 (cos.f64 phi1) 2)) (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))))
0.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))
0.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
0.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
5.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
0.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (cbrt.f64 (pow.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)) 3))))
0.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda1) (sin.f64 lambda2))) (exp.f64 (*.f64 (cos.f64 lambda1) (cos.f64 lambda2)))))))))
0.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (log1p.f64 (expm1.f64 (sin.f64 (-.f64 lambda1 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
10.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 lambda1 3) 1/6) lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))))
0.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (cos.f64 (-.f64 lambda1 lambda2))))))))
0.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (expm1.f64 (log1p.f64 (sin.f64 (-.f64 lambda1 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
3.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
30.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (pow.f64 (sqrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
31.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
1.0b
(+.f64 lambda1 (pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))) 3))
13.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))))
Compiler

Compiled 1666 to 1014 computations (39.1% saved)

localize32.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
0.6b
(log.f64 (exp.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 100 to 15 computations (85% saved)

series8.0ms (0%)

Counts
2 → 96
Calls

24 calls:

TimeVariablePointExpression
1.0ms
lambda1
@inf
(log.f64 (exp.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
1.0ms
lambda1
@0
(log.f64 (exp.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
0.0ms
lambda2
@inf
(log.f64 (exp.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
0.0ms
lambda1
@-inf
(log.f64 (exp.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
0.0ms
lambda2
@0
(log.f64 (exp.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))

rewrite68.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
605×prod-diff_binary64
553×log-prod_binary64
327×pow2_binary64
246×fma-def_binary64
225×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify107.0ms (0.5%)

Algorithm
egg-herbie
Rules
543×fma-def_binary64
414×associate-+r+_binary64
396×neg-sub0_binary64
380×neg-mul-1_binary64
358×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01061930
13001902
28411788
332911732
467401732
Stop Event
node limit
Counts
177 → 86
Calls
Call 1
Inputs
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
Outputs
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (cos.f64 phi1) (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (-.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))))) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 phi1)))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (+.f64 (*.f64 1/6 (pow.f64 lambda1 3)) (neg.f64 lambda1)))) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (fma.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2)) (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 (*.f64 phi2 phi2) (+.f64 (*.f64 1/24 (*.f64 phi2 phi2)) -1/2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1)
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1)
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (*.f64 phi1 -1/2))))
(fma.f64 phi1 (*.f64 phi1 -1/2) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 phi1 (*.f64 phi1 -1/2)))))
(+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1))))))
(+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 phi1 (*.f64 phi1 -1/2)))) (fma.f64 -1/720 (pow.f64 phi1 6) 1))
(+.f64 1 (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 phi1 (*.f64 phi1 -1/2) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 phi1 (*.f64 phi1 -1/2) 1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (cos.f64 phi1) (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (-.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))))) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 phi1)))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (+.f64 (*.f64 1/6 (pow.f64 lambda1 3)) (neg.f64 lambda1)))) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (fma.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2)) (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 (*.f64 phi2 phi2) (+.f64 (*.f64 1/24 (*.f64 phi2 phi2)) -1/2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1)
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1)
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (*.f64 phi1 -1/2))))
(fma.f64 phi1 (*.f64 phi1 -1/2) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 phi1 (*.f64 phi1 -1/2)))))
(+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1))))))
(+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 phi1 (*.f64 phi1 -1/2)))) (fma.f64 -1/720 (pow.f64 phi1 6) 1))
(+.f64 1 (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 phi1 (*.f64 phi1 -1/2) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 phi1 (*.f64 phi1 -1/2) 1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
0.6b
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
4.3b
(cos.f64 (-.f64 lambda2 lambda1))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 72 to 14 computations (80.6% saved)

series11.0ms (0.1%)

Counts
3 → 100
Calls

27 calls:

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

rewrite83.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
686×fma-def_binary64
357×fma-neg_binary64
321×expm1-udef_binary64
321×log1p-udef_binary64
257×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify104.0ms (0.5%)

Algorithm
egg-herbie
Rules
439×distribute-rgt-neg-in_binary64
415×associate-+l+_binary64
372×distribute-lft-neg-in_binary64
371×neg-sub0_binary64
346×fma-neg_binary64
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
0901902
12321884
25891842
322261842
458961842
Stop Event
node limit
Counts
217 → 167
Calls
Call 1
Inputs
(cos.f64 (neg.f64 lambda1))
(+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) 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))))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 lambda1)))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 lambda2))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (cos.f64 phi1) (+.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 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
Outputs
(cos.f64 (neg.f64 lambda1))
(cos.f64 lambda1)
(+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))))
(+.f64 (cos.f64 lambda1) (*.f64 (neg.f64 lambda2) (sin.f64 (neg.f64 lambda1))))
(-.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))
(fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))
(+.f64 (cos.f64 lambda1) (fma.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)))))
(+.f64 (cos.f64 lambda1) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (*.f64 lambda2 (neg.f64 (sin.f64 (neg.f64 lambda1))))))
(fma.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(+.f64 (cos.f64 lambda1) (fma.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))))))
(+.f64 (cos.f64 lambda1) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 (sin.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2)))))
(fma.f64 (neg.f64 (sin.f64 lambda1)) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (sin.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(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 lambda1 (sin.f64 lambda2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))
(fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 lambda1 (*.f64 lambda1 -1/2)))))
(+.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 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 lambda1 (*.f64 lambda1 -1/2)))) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 lambda1)))
(+.f64 (cos.f64 lambda1) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))))
(+.f64 (+.f64 (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 (neg.f64 lambda2) (sin.f64 (neg.f64 lambda1))))
(+.f64 (-.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (cos.f64 phi1))
(+.f64 (cos.f64 lambda1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(+.f64 (+.f64 (cos.f64 lambda1) (fma.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))))) (cos.f64 phi1))
(+.f64 (cos.f64 lambda1) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (*.f64 lambda2 (neg.f64 (sin.f64 (neg.f64 lambda1))))) (cos.f64 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 lambda1)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 lambda1) (fma.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 phi1))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))))
(+.f64 (+.f64 (cos.f64 lambda1) (cos.f64 phi1)) (fma.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))) (*.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))))))
(+.f64 (cos.f64 lambda1) (+.f64 (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 -1/2 (*.f64 lambda2 lambda2))) (*.f64 (sin.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2)))) (cos.f64 phi1)))
(+.f64 (fma.f64 (neg.f64 (sin.f64 lambda1)) (fma.f64 1/6 (pow.f64 lambda2 3) (neg.f64 lambda2)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 lambda1))) (cos.f64 phi1))
(+.f64 (-.f64 (*.f64 (cos.f64 lambda1) (+.f64 1 (*.f64 -1/2 (*.f64 lambda2 lambda2)))) (*.f64 (sin.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2))) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 lambda2))
(+.f64 (cos.f64 lambda2) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (+.f64 (cos.f64 lambda2) (cos.f64 phi1)) (*.f64 lambda1 (sin.f64 lambda2)))
(+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 lambda2) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2)))) (cos.f64 phi1))
(+.f64 (cos.f64 lambda2) (+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (cos.f64 phi1)))
(+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2))) (cos.f64 phi1))
(+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 lambda1 (*.f64 lambda1 -1/2))))) (cos.f64 phi1))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 phi1) (+.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 (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2)))) (cos.f64 phi1)))
(+.f64 (+.f64 (cos.f64 lambda2) (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 phi1)))
(+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (+.f64 (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (cos.f64 phi1)))
(+.f64 (+.f64 (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 lambda1 (*.f64 lambda1 -1/2)))) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1)
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 1 (fma.f64 1/24 (pow.f64 phi1 4) (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 1/24 (pow.f64 phi1 4) 1))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 1/24 (pow.f64 phi1 4) (cos.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 1 (fma.f64 1/24 (pow.f64 phi1 4) (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (fma.f64 1/24 (pow.f64 phi1 4) (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 -1/720 (pow.f64 phi1 6) 1))
(+.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 1/24 (pow.f64 phi1 4) 1)))
(+.f64 1 (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 1/24 (pow.f64 phi1 4) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))

localize31.0ms (0.2%)

Local error

Found 4 expressions with local error:

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

Compiled 105 to 17 computations (83.8% saved)

series11.0ms (0.1%)

Counts
2 → 56
Calls

18 calls:

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

rewrite72.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
775×log-prod_binary64
526×fma-def_binary64
283×expm1-udef_binary64
283×log1p-udef_binary64
269×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify65.0ms (0.3%)

Algorithm
egg-herbie
Rules
757×fma-def_binary64
613×fma-neg_binary64
511×associate-*l*_binary64
490×associate-*r*_binary64
401×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01101122
13281075
2992929
34369884
Stop Event
node limit
Counts
108 → 100
Calls
Call 1
Inputs
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 lambda1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(-.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 -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) (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)))
Outputs
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2))))
(fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (cos.f64 (-.f64 lambda1 lambda2)))
(*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (*.f64 1/24 (pow.f64 phi2 4))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))))))
(+.f64 (*.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 lambda1 (*.f64 (*.f64 lambda1 (cos.f64 lambda2)) (cos.f64 phi2))) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (-.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 lambda1 (cos.f64 phi2))) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (pow.f64 lambda1 3))))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (-.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) 1/6))) (*.f64 lambda1 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))))))
(+.f64 (*.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (+.f64 (*.f64 1/6 (pow.f64 lambda1 3)) (neg.f64 lambda1))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2)))) (cos.f64 lambda2))))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2))) (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 lambda1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))) (*.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(*.f64 (cos.f64 phi2) (+.f64 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1))))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))) (*.f64 -1/2 (*.f64 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 phi2)) (cos.f64 lambda1)))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3))) (fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 (fma.f64 (*.f64 lambda2 -1/2) lambda2 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 (cos.f64 phi2) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1))
(-.f64 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 phi2 2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (fma.f64 -1/2 (*.f64 (*.f64 phi2 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (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 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(*.f64 (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.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 phi2 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (sin.f64 lambda1)) (*.f64 (*.f64 1/24 (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 phi2 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (fma.f64 (*.f64 1/24 (pow.f64 phi2 4)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (sin.f64 lambda1) (-.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.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 phi2 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (fma.f64 -1/720 (*.f64 (pow.f64 phi2 6) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 1/24 (pow.f64 phi2 4)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))))) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.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 (fma.f64 (*.f64 1/24 (pow.f64 phi2 4)) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1))))
(+.f64 (*.f64 (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 -1/720 (pow.f64 phi2 6))) (*.f64 1/24 (pow.f64 phi2 4)))) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)) (+.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) 1) (fma.f64 -1/2 (*.f64 phi2 phi2) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 -1 (*.f64 (cos.f64 phi2) lambda2))
(neg.f64 (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (neg.f64 lambda2))
(*.f64 lambda2 (neg.f64 (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)))
(fma.f64 (cos.f64 phi2) lambda1 (neg.f64 (*.f64 lambda2 (cos.f64 phi2))))
(-.f64 (*.f64 lambda1 (cos.f64 phi2)) (*.f64 lambda2 (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 (*.f64 1/2 (cos.f64 phi2)) (*.f64 lambda2 (*.f64 lambda1 lambda1)))))
(fma.f64 lambda1 (cos.f64 phi2) (-.f64 (*.f64 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 (*.f64 lambda1 lambda1) 1/2)) (*.f64 lambda2 (cos.f64 phi2))))
(fma.f64 lambda1 (cos.f64 phi2) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))) lambda2)))
(*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda1 (*.f64 (*.f64 lambda1 lambda2) 1/2))) lambda2))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1 (*.f64 (cos.f64 phi2) lambda2)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (pow.f64 lambda1 2)))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1 (*.f64 lambda2 (cos.f64 phi2)) (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (*.f64 (*.f64 1/2 (cos.f64 phi2)) (*.f64 lambda2 (*.f64 lambda1 lambda1))))))
(fma.f64 lambda1 (cos.f64 phi2) (-.f64 (fma.f64 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) -1/6 (*.f64 (*.f64 lambda2 (cos.f64 phi2)) (*.f64 (*.f64 lambda1 lambda1) 1/2))) (*.f64 lambda2 (cos.f64 phi2))))
(+.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (*.f64 lambda1 (*.f64 lambda1 1/2))) (*.f64 (pow.f64 lambda1 3) -1/6))))
(fma.f64 lambda1 (cos.f64 phi2) (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 -1/6 lambda1) (*.f64 1/2 lambda2))) lambda2)))
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (neg.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(*.f64 (*.f64 lambda2 (cos.f64 phi2)) (neg.f64 (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))))
(*.f64 lambda2 (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
(*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (neg.f64 lambda2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(*.f64 (*.f64 lambda2 (cos.f64 phi2)) (neg.f64 (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (*.f64 lambda2 (neg.f64 (cos.f64 lambda1))))
(*.f64 lambda2 (*.f64 (cos.f64 phi2) (neg.f64 (cos.f64 lambda1))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))
(-.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (fma.f64 (neg.f64 lambda2) (cos.f64 lambda1) (sin.f64 lambda1)))

localize41.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3)
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.4b
(cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 108 to 32 computations (70.4% saved)

series10.0ms (0%)

Counts
2 → 40
Calls

12 calls:

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

rewrite62.0ms (0.3%)

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

Useful iterations: 0 (0.0ms)

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

simplify71.0ms (0.4%)

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

Useful iterations: 3 (0.0ms)

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

localize32.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
0.5b
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 100 to 15 computations (85% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

TimeVariablePointExpression
1.0ms
lambda1
@0
(expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
0.0ms
phi2
@inf
(expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
0.0ms
phi1
@0
(expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
0.0ms
lambda2
@0
(expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
0.0ms
lambda2
@-inf
(expm1.f64 (log1p.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))

rewrite57.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
640×prod-diff_binary64
553×log-prod_binary64
327×pow2_binary64
253×fma-def_binary64
225×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify78.0ms (0.4%)

Algorithm
egg-herbie
Rules
543×fma-def_binary64
414×associate-+r+_binary64
396×neg-sub0_binary64
380×neg-mul-1_binary64
358×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0106965
1300951
2841894
33291866
46740866
Stop Event
node limit
Counts
99 → 86
Calls
Call 1
Inputs
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
Outputs
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (cos.f64 phi1) (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (-.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))))) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 phi1)))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (+.f64 (*.f64 1/6 (pow.f64 lambda1 3)) (neg.f64 lambda1)))) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (fma.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2)) (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 (*.f64 phi2 phi2) (+.f64 (*.f64 1/24 (*.f64 phi2 phi2)) -1/2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1)
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1)
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (*.f64 phi1 -1/2))))
(fma.f64 phi1 (*.f64 phi1 -1/2) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 phi1 (*.f64 phi1 -1/2)))))
(+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1))))))
(+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 phi1 (*.f64 phi1 -1/2)))) (fma.f64 -1/720 (pow.f64 phi1 6) 1))
(+.f64 1 (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 phi1 (*.f64 phi1 -1/2) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 phi1 (*.f64 phi1 -1/2) 1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))

eval595.0ms (3%)

Compiler

Compiled 35046 to 8665 computations (75.3% saved)

prune348.0ms (1.7%)

Pruning

43 alts after pruning (43 fresh and 0 done)

PrunedKeptTotal
New1129331162
Fresh151025
Picked101
Done404
Total1149431192
Error
0.4b
Counts
1192 → 43
Alt Table
Click to see full alt table
StatusErrorProgram
13.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
5.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (expm1.f64 (log1p.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))))))
18.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda1 (*.f64 (*.f64 lambda1 lambda2) 1/2))) lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)) (cos.f64 phi1))))
13.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
13.5b
(+.f64 lambda1 (expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
18.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
0.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)) 1) 1)))
3.3b
(+.f64 lambda1 (cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) 3)))
24.7b
(+.f64 lambda1 (expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))))
23.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))))
28.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
23.3b
(+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
18.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))))
24.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
31.5b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (cbrt.f64 (exp.f64 (*.f64 3 (log.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
31.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
20.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
18.6b
(+.f64 lambda1 (log.f64 (exp.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))))
0.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 1/3 (*.f64 3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
21.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (log.f64 (exp.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))))
23.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))))
14.2b
(+.f64 lambda1 (pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))) 3))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (log.f64 (*.f64 (exp.f64 (*.f64 (sin.f64 lambda2) (sin.f64 lambda1))) (exp.f64 (*.f64 (cos.f64 lambda2) (cos.f64 lambda1))))) (cos.f64 phi1))))
0.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
13.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))))
22.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) (cos.f64 phi1))))
0.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
10.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
18.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (expm1.f64 (log1p.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))))
14.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
10.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
0.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (cbrt.f64 (pow.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)) 3))))
14.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
3.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
10.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) (cos.f64 phi2)) (-.f64 (*.f64 (pow.f64 lambda1 3) 1/6) lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (cbrt.f64 (pow.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)) 3))))
0.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
18.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 lambda2 lambda1) phi1) 1/2)) (cos.f64 (*.f64 (-.f64 lambda2 (+.f64 lambda1 phi1)) 1/2))) 2)))
13.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1)))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (log1p.f64 (expm1.f64 (cos.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi1))))
3.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2) (pow.f64 (cos.f64 phi1) 2)) (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))))
Compiler

Compiled 2228 to 1454 computations (34.7% saved)

localize38.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.4b
(*.f64 1/3 (*.f64 3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))
0.5b
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 109 to 30 computations (72.5% saved)

series4.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

rewrite61.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
637×log-prod_binary64
605×prod-diff_binary64
371×pow2_binary64
258×fma-def_binary64
257×expm1-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify81.0ms (0.4%)

Algorithm
egg-herbie
Rules
543×fma-def_binary64
414×associate-+r+_binary64
396×neg-sub0_binary64
380×neg-mul-1_binary64
358×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
0106965
1300951
2841894
33291866
46740866
Stop Event
node limit
Counts
88 → 75
Calls
Call 1
Inputs
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
Outputs
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(+.f64 (cos.f64 phi1) (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 phi1)))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))) (fma.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (cos.f64 phi1) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 phi1) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (-.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))))) (*.f64 (cos.f64 phi2) (*.f64 lambda1 (neg.f64 (sin.f64 lambda2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 phi1)))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 lambda2))) (+.f64 (*.f64 1/6 (pow.f64 lambda1 3)) (neg.f64 lambda1)))) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 (neg.f64 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/2)) 1) (cos.f64 lambda2)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)))))
(+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (fma.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))))
(fma.f64 -1/6 (*.f64 (*.f64 (pow.f64 lambda2 3) (cos.f64 phi2)) (sin.f64 lambda1)) (fma.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 (+.f64 (*.f64 lambda2 (*.f64 lambda2 -1/2)) 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))) (*.f64 (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/2))) (cos.f64 lambda1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (cos.f64 phi1)))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 phi1) (*.f64 (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (cos.f64 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) (*.f64 1/24 (pow.f64 phi2 4))))))
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 1 (*.f64 phi2 (*.f64 phi2 -1/2))))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 6)) (cos.f64 phi1)))))
(+.f64 (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) (*.f64 (*.f64 phi2 phi2) (+.f64 (*.f64 1/24 (*.f64 phi2 phi2)) -1/2))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1)
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1)
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi1 (*.f64 phi1 -1/2))))
(fma.f64 phi1 (*.f64 phi1 -1/2) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 phi1 (*.f64 phi1 -1/2)))))
(+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (*.f64 -1/2 (pow.f64 phi1 2))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 1 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 -1/2 (*.f64 phi1 phi1))))))
(+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 1/24 (pow.f64 phi1 4) (*.f64 phi1 (*.f64 phi1 -1/2)))) (fma.f64 -1/720 (pow.f64 phi1 6) 1))
(+.f64 1 (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 phi1 (*.f64 phi1 -1/2) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/24 (pow.f64 phi1 4))) (fma.f64 phi1 (*.f64 phi1 -1/2) 1)))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1))
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))

localize27.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1))
0.6b
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 64 to 19 computations (70.3% saved)

series7.0ms (0%)

Counts
2 → 24
Calls

15 calls:

TimeVariablePointExpression
2.0ms
lambda2
@0
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
1.0ms
lambda2
@inf
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1))
1.0ms
lambda1
@0
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
0.0ms
lambda2
@-inf
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
0.0ms
lambda1
@-inf
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1))

rewrite68.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
614×prod-diff_binary64
609×log-prod_binary64
342×fma-def_binary64
246×pow1/3_binary64
242×log1p-udef_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify73.0ms (0.4%)

Algorithm
egg-herbie
Rules
866×fma-neg_binary64
549×sub-neg_binary64
343×neg-sub0_binary64
338×neg-mul-1_binary64
328×*-commutative_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
062464
1166422
2425396
31495391
43921390
57669390
Stop Event
node limit
Counts
88 → 85
Calls
Call 1
Inputs
(+.f64 1 (cos.f64 (neg.f64 lambda2)))
(+.f64 1 (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 1 (+.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 1 (+.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 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1 (cos.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 1 (cos.f64 lambda1)))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1))))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 1 (+.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 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1)
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1)
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1)
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
Outputs
(+.f64 1 (cos.f64 (neg.f64 lambda2)))
(+.f64 1 (cos.f64 lambda2))
(+.f64 1 (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))))
(+.f64 1 (+.f64 (cos.f64 lambda2) (neg.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1))))
(+.f64 1 (-.f64 (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)))
(+.f64 1 (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))
(+.f64 1 (+.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 1 (+.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 1 (+.f64 (-.f64 (cos.f64 lambda2) (*.f64 (neg.f64 (sin.f64 lambda2)) lambda1)) (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2))))
(+.f64 1 (fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))))
(fma.f64 (+.f64 1 (*.f64 lambda1 (*.f64 lambda1 -1/2))) (cos.f64 lambda2) (fma.f64 lambda1 (sin.f64 lambda2) 1))
(fma.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 lambda1 (*.f64 lambda1 -1/2))) (fma.f64 lambda1 (sin.f64 lambda2) 1))
(+.f64 (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 1 (+.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 1 (+.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 (neg.f64 (sin.f64 lambda2)) lambda1)) (*.f64 (cos.f64 lambda2) (*.f64 (*.f64 lambda1 lambda1) -1/2))) (fma.f64 (*.f64 (neg.f64 (sin.f64 lambda2)) 1/6) (pow.f64 lambda1 3) 1))
(+.f64 (fma.f64 (cos.f64 lambda2) (*.f64 lambda1 (*.f64 lambda1 -1/2)) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2))) (fma.f64 (pow.f64 lambda1 3) (*.f64 -1/6 (sin.f64 lambda2)) 1))
(fma.f64 (pow.f64 lambda1 3) (*.f64 -1/6 (sin.f64 lambda2)) (fma.f64 (+.f64 1 (*.f64 lambda1 (*.f64 lambda1 -1/2))) (cos.f64 lambda2) (fma.f64 lambda1 (sin.f64 lambda2) 1)))
(-.f64 (*.f64 (cos.f64 lambda2) (+.f64 1 (*.f64 lambda1 (*.f64 lambda1 -1/2)))) (fma.f64 (sin.f64 lambda2) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1) -1))
(+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))))
(+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 1 (cos.f64 lambda1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 1 (cos.f64 lambda1)))
(fma.f64 lambda2 (sin.f64 lambda1) (+.f64 1 (cos.f64 lambda1)))
(+.f64 (cos.f64 lambda1) (fma.f64 lambda2 (sin.f64 lambda1) 1))
(+.f64 1 (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 lambda1))) (cos.f64 lambda1))))
(fma.f64 lambda2 (sin.f64 lambda1) (+.f64 1 (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)) (fma.f64 lambda2 (sin.f64 lambda1) 1))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1) 1))
(fma.f64 (fma.f64 (*.f64 lambda2 -1/2) lambda2 1) (cos.f64 lambda1) (fma.f64 lambda2 (sin.f64 lambda1) 1))
(+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (+.f64 1 (+.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) (+.f64 1 (fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)) (cos.f64 lambda1)))))
(+.f64 (fma.f64 -1/6 (*.f64 (sin.f64 lambda1) (pow.f64 lambda2 3)) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) 1) (cos.f64 lambda1))) (fma.f64 lambda2 (sin.f64 lambda1) 1))
(fma.f64 lambda2 (sin.f64 lambda1) (fma.f64 (sin.f64 lambda1) (*.f64 -1/6 (pow.f64 lambda2 3)) (fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1) 1)))
(+.f64 (fma.f64 (fma.f64 (*.f64 lambda2 -1/2) lambda2 1) (cos.f64 lambda1) 1) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/6 (pow.f64 lambda2 3)) lambda2)))
(+.f64 (fma.f64 (fma.f64 (*.f64 lambda2 -1/2) lambda2 1) (cos.f64 lambda1) 1) (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1)
(+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1)
(+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1)
(+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1)
(+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (fma.f64 -1 lambda1 lambda2)))) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))

localize64.0ms (0.3%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 lambda2 lambda1) phi1) 1/2)) (cos.f64 (*.f64 (-.f64 lambda2 (+.f64 lambda1 phi1)) 1/2)))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
7.4b
(cos.f64 (*.f64 (+.f64 (-.f64 lambda2 lambda1) phi1) 1/2))
7.5b
(cos.f64 (*.f64 (-.f64 lambda2 (+.f64 lambda1 phi1)) 1/2))
Compiler

Compiled 164 to 61 computations (62.8% saved)

series17.0ms (0.1%)

Counts
3 → 108
Calls

27 calls:

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

rewrite89.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
819×log-prod_binary64
459×fma-neg_binary64
312×expm1-udef_binary64
312×log1p-udef_binary64
247×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify131.0ms (0.6%)

Algorithm
egg-herbie
Rules
605×associate-+l+_binary64
524×fma-neg_binary64
515×*-commutative_binary64
501×associate-+r+_binary64
451×distribute-rgt-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
02243049
17412860
224232731
356702667
476852667
Stop Event
node limit
Counts
180 → 154
Calls
Call 1
Inputs
(cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))))
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 lambda2 3) (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) lambda1)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) lambda1)) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (pow.f64 phi1 3))) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) lambda2)) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) lambda2)) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) lambda2)) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (pow.f64 lambda2 3))) (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))
(+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)))
(+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1))))
(+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))))
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))))))))
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))))) (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))))))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))) lambda1))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))))) (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))) lambda1)))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))) lambda1) (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (+.f64 (*.f64 -1/16 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 -1/16 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))))) (pow.f64 lambda1 3)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1))))
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 phi1 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))))
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (+.f64 (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))) (*.f64 phi1 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))))))))
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/16 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))))) (+.f64 (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))) (*.f64 phi1 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1))))
Outputs
(cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))
(fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))))
(fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 lambda2 lambda2)) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))))
(fma.f64 (*.f64 -1/2 lambda2) (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda2 lambda2)) 1) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))))
(fma.f64 (*.f64 -1/2 lambda2) (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/8)))))
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 lambda2 3) (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))))
(fma.f64 1/48 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 lambda2 lambda2)) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda2 lambda2)) 1) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (+.f64 (*.f64 1/48 (pow.f64 lambda2 3)) (*.f64 -1/2 lambda2))))
(+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/8)))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (+.f64 (*.f64 -1/2 lambda2) (*.f64 1/48 (pow.f64 lambda2 3)))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))
(cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 -1/2 (-.f64 phi1 lambda2)))) (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) lambda1)) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 lambda1 lambda1)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda1 lambda1)) 1) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (+.f64 1 (*.f64 -1/8 (*.f64 lambda1 lambda1)))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 -1/2 (-.f64 phi1 lambda2)))) (*.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (+.f64 1 (*.f64 -1/8 (*.f64 lambda1 lambda1)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) lambda1)) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (pow.f64 lambda1 3)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 lambda1 lambda1)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (pow.f64 lambda1 3)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda1 lambda1)) 1) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (+.f64 1 (*.f64 -1/8 (*.f64 lambda1 lambda1)))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (+.f64 (*.f64 lambda1 1/2) (*.f64 -1/48 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (+.f64 1 (*.f64 -1/8 (*.f64 lambda1 lambda1)))) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (+.f64 (*.f64 lambda1 1/2) (*.f64 -1/48 (pow.f64 lambda1 3)))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))
(fma.f64 1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))
(fma.f64 1/2 (*.f64 phi1 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))))
(fma.f64 1/2 (*.f64 phi1 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))))))
(fma.f64 1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 (*.f64 -1/8 (*.f64 phi1 phi1)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))
(fma.f64 1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi1 phi1)) 1) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))))
(fma.f64 1/2 (*.f64 phi1 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 phi1 (*.f64 phi1 -1/8)))))
(fma.f64 1/2 (*.f64 phi1 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 phi1 (*.f64 phi1 -1/8)))))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (pow.f64 phi1 3))) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))))
(fma.f64 1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) (fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (pow.f64 phi1 3)) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 (*.f64 -1/8 (*.f64 phi1 phi1)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))))))
(fma.f64 1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) (fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (pow.f64 phi1 3)) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi1 phi1)) 1) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))
(+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 phi1 (*.f64 phi1 -1/8)))) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 phi1 1/2) (*.f64 -1/48 (pow.f64 phi1 3)))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 phi1 (*.f64 phi1 -1/8)))) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 phi1 1/2) (*.f64 -1/48 (pow.f64 phi1 3)))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1))))
(cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2))))
(cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) lambda2)) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))
(fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) lambda2)) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 -1/8 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))
(fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda2 lambda2)) 1) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))
(fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/8)))))
(+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) lambda2)) (+.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (pow.f64 lambda2 3))) (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (fma.f64 1/48 (*.f64 (pow.f64 lambda2 3) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 -1/8 (*.f64 (*.f64 lambda2 lambda2) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda2 lambda2)) 1) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))) (*.f64 1/48 (*.f64 (pow.f64 lambda2 3) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))
(+.f64 (fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/8))))) (*.f64 1/48 (*.f64 (pow.f64 lambda2 3) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (+.f64 1 (*.f64 lambda2 (*.f64 lambda2 -1/8)))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (+.f64 (*.f64 -1/2 lambda2) (*.f64 1/48 (pow.f64 lambda2 3)))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))
(+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))
(fma.f64 -1/8 (*.f64 (*.f64 lambda1 lambda1) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))
(fma.f64 -1/8 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))) (fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))
(+.f64 (*.f64 lambda1 (*.f64 1/2 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 lambda1 lambda1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))
(+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (pow.f64 lambda1 2))) (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))
(fma.f64 -1/48 (*.f64 (pow.f64 lambda1 3) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (fma.f64 -1/8 (*.f64 (*.f64 lambda1 lambda1) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))
(fma.f64 -1/48 (*.f64 (pow.f64 lambda1 3) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (fma.f64 -1/8 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))) (fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))
(fma.f64 -1/48 (*.f64 (pow.f64 lambda1 3) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (+.f64 (*.f64 lambda1 (*.f64 1/2 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))) (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 lambda1 lambda1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))
(+.f64 (*.f64 (+.f64 1 (*.f64 -1/8 (*.f64 lambda1 lambda1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (+.f64 (*.f64 lambda1 1/2) (*.f64 -1/48 (pow.f64 lambda1 3)))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 lambda2 phi1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)))
(+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 -1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))
(fma.f64 (*.f64 -1/2 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) phi1 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))
(fma.f64 -1/2 (*.f64 phi1 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))))
(fma.f64 -1/2 (*.f64 phi1 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))))
(+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1))))
(+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 phi1 phi1)) (*.f64 -1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi1 phi1)) 1) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) (*.f64 -1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))
(+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 phi1 (*.f64 phi1 -1/8)))) (*.f64 -1/2 (*.f64 phi1 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 phi1 (*.f64 phi1 -1/8)))) (*.f64 -1/2 (*.f64 phi1 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))))))
(+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (pow.f64 phi1 3))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 phi1 2) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) phi1)))))
(+.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (fma.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (pow.f64 phi1 3)) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 phi1 phi1)) (*.f64 -1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))))
(+.f64 (+.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 phi1 phi1)) 1) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) (*.f64 -1/2 (*.f64 phi1 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (*.f64 (pow.f64 phi1 3) 1/48)))
(+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 phi1 (*.f64 phi1 -1/8)))) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 1/48 (pow.f64 phi1 3)) (*.f64 -1/2 phi1))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 phi1 (*.f64 phi1 -1/8)))) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 1/48 (pow.f64 phi1 3)) (*.f64 -1/2 phi1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1))))
(cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1))))
(cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))))
(fma.f64 lambda2 (*.f64 -1/2 (+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))
(fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (*.f64 -1/2 lambda2) (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))))
(+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 lambda2 (*.f64 -1/2 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))))
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))))))))
(fma.f64 lambda2 (*.f64 -1/2 (+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/4 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 1/4 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))))))
(fma.f64 lambda2 (*.f64 -1/2 (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) -1/4 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) 1/4))) (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))
(fma.f64 lambda2 (*.f64 -1/2 (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (+.f64 (*.f64 lambda2 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) 1/4)))) (*.f64 (+.f64 (*.f64 (*.f64 lambda2 lambda2) -1/4) 1) (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))))
(+.f64 (*.f64 (+.f64 (*.f64 (*.f64 lambda2 lambda2) -1/4) 1) (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))) (*.f64 lambda2 (+.f64 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) 1/4))) (*.f64 -1/2 (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))))))
(+.f64 (*.f64 lambda2 (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))) (+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) (+.f64 (*.f64 (pow.f64 lambda2 2) (+.f64 (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))))) (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))))) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))))))))
(fma.f64 lambda2 (*.f64 -1/2 (+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (fma.f64 (*.f64 lambda2 lambda2) (fma.f64 -1/4 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 1/4 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (*.f64 (pow.f64 lambda2 3) (fma.f64 1/48 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (fma.f64 1/16 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (fma.f64 1/16 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (*.f64 1/48 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))))))))))
(fma.f64 lambda2 (*.f64 -1/2 (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (fma.f64 (pow.f64 lambda2 3) (fma.f64 1/48 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (+.f64 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) 1/48)) (*.f64 1/16 (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))))) (*.f64 (*.f64 lambda2 lambda2) (fma.f64 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) -1/4 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) 1/4)))))))
(fma.f64 lambda2 (*.f64 -1/2 (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (+.f64 (*.f64 (+.f64 (*.f64 (*.f64 lambda2 lambda2) -1/4) 1) (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) 1/4)) (*.f64 lambda2 (fma.f64 1/48 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) (+.f64 (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) 1/16)) (*.f64 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))) 1/12))))))))
(fma.f64 lambda2 (*.f64 -1/2 (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1)))))) (+.f64 (*.f64 (+.f64 (*.f64 (*.f64 lambda2 lambda2) -1/4) 1) (*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))) (*.f64 (*.f64 lambda2 lambda2) (+.f64 (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) 1/4)) (*.f64 lambda2 (*.f64 (fma.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 (+.f64 phi1 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))))) 1/12))))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 (+.f64 (*.f64 -1 lambda2) lambda1)))) (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))
(*.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))) lambda1))
(fma.f64 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 lambda1 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))))
(fma.f64 lambda1 (*.f64 1/2 (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))
(fma.f64 lambda1 (*.f64 1/2 (fma.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (*.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))))) (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))) lambda1)))
(fma.f64 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (*.f64 lambda1 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))))))
(fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (fma.f64 lambda1 (*.f64 1/2 (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (*.f64 lambda1 (*.f64 lambda1 (fma.f64 (*.f64 -1/4 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 1/4 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))))))
(fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 lambda1 (+.f64 (*.f64 1/2 (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (*.f64 lambda1 (fma.f64 (*.f64 -1/4 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 1/4 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))))))
(+.f64 (*.f64 lambda1 (+.f64 (*.f64 1/2 (fma.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (*.f64 lambda1 (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (*.f64 1/4 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))))) (*.f64 (+.f64 (*.f64 (*.f64 lambda1 lambda1) -1/4) 1) (*.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))
(+.f64 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))) (+.f64 (*.f64 (pow.f64 lambda1 2) (+.f64 (*.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))))) (+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))) lambda1) (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (+.f64 (*.f64 -1/16 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))))) (*.f64 -1/16 (*.f64 (cos.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1)))))))) (pow.f64 lambda1 3)))))
(fma.f64 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 1/4 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (*.f64 -1/4 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (fma.f64 (*.f64 1/2 (+.f64 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) lambda1 (*.f64 (pow.f64 lambda1 3) (fma.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (*.f64 -1/16 (+.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))))))))
(fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 (*.f64 -1/4 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 1/4 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (fma.f64 (pow.f64 lambda1 3) (+.f64 (*.f64 -1/16 (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (*.f64 -1/48 (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))) (*.f64 (*.f64 lambda1 1/2) (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))))))
(fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 (*.f64 -1/4 (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (*.f64 1/4 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (fma.f64 lambda1 (*.f64 1/2 (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))) (*.f64 (pow.f64 lambda1 3) (*.f64 (fma.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 phi1))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))) -1/12)))))
(+.f64 (+.f64 (*.f64 1/2 (*.f64 lambda1 (fma.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))) (*.f64 (*.f64 lambda1 lambda1) (+.f64 (*.f64 lambda1 (*.f64 (fma.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2))) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))) -1/12)) (*.f64 (sin.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (*.f64 1/4 (sin.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))))))) (*.f64 (+.f64 (*.f64 (*.f64 lambda1 lambda1) -1/4) 1) (*.f64 (cos.f64 (*.f64 -1/2 (-.f64 phi1 lambda2))) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2))))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 (*.f64 -1 lambda1) lambda2) phi1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))) 2)
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (*.f64 phi1 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))))
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))) 2)
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (+.f64 (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))) (*.f64 phi1 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))))))))
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (fma.f64 (*.f64 phi1 phi1) (*.f64 -1/4 (+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2))) (*.f64 phi1 (*.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) 0))))
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (fma.f64 phi1 0 (*.f64 (*.f64 phi1 phi1) -1/4)))
(+.f64 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 phi1 (*.f64 phi1 -1/4)))
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 phi1 (*.f64 phi1 -1/4)))
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (+.f64 (*.f64 (pow.f64 phi1 3) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (+.f64 (*.f64 1/48 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (+.f64 (*.f64 1/16 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/16 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))))) (+.f64 (*.f64 (pow.f64 phi1 2) (+.f64 (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)) (*.f64 -1/4 (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))) (*.f64 phi1 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))) (*.f64 -1/2 (*.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))))))))))
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (fma.f64 (*.f64 phi1 phi1) (*.f64 -1/4 (+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (pow.f64 (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2))) (*.f64 phi1 (*.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) (sin.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) 0))))
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) (fma.f64 phi1 0 (*.f64 (*.f64 phi1 phi1) -1/4)))
(+.f64 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 phi1 (*.f64 phi1 -1/4)))
(+.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda1 lambda2))) 2) (*.f64 phi1 (*.f64 phi1 -1/4)))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 phi1) lambda1))) (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 (*.f64 -1 phi1) lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 lambda2 (*.f64 -1 phi1)) lambda1))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))
(*.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 (+.f64 phi1 lambda1)))) (cos.f64 (*.f64 1/2 (-.f64 (+.f64 phi1 lambda2) lambda1))))
(*.f64 (cos.f64 (*.f64 -1/2 (+.f64 phi1 (-.f64 lambda1 lambda2)))) (cos.f64 (*.f64 1/2 (+.f64 phi1 (-.f64 lambda2 lambda1)))))

localize33.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(expm1.f64 (log1p.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
0.6b
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))
4.3b
(cos.f64 (-.f64 lambda2 lambda1))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 93 to 16 computations (82.8% saved)

series3.0ms (0%)

Counts
1 → 36
Calls

9 calls:

TimeVariablePointExpression
1.0ms
lambda2
@0
(expm1.f64 (log1p.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
0.0ms
lambda1
@0
(expm1.f64 (log1p.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
0.0ms
lambda2
@inf
(expm1.f64 (log1p.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
0.0ms
lambda1
@-inf
(expm1.f64 (log1p.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
0.0ms
lambda2
@-inf
(expm1.f64 (log1p.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))

rewrite65.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
529×log-prod_binary64
490×fma-def_binary64
330×pow-prod-down_binary64
314×pow2_binary64
265×fma-neg_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify62.0ms (0.3%)

Algorithm
egg-herbie
Rules
387×associate-+l+_binary64
357×distribute-lft-neg-out_binary64
354×distribute-rgt-neg-out_binary64
329×fma-neg_binary64
287×associate-+l-_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
076542
1200533
2524513
31956512
44897512
Stop Event
node limit
Counts
105 → 95
Calls
Call 1
Inputs
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 lambda1)))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 lambda2))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (cos.f64 phi1) (+.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 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1)))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
Outputs
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 lambda1))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1))))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda1) (*.f64 (neg.f64 lambda2) (neg.f64 (sin.f64 lambda1)))))
(+.f64 (cos.f64 phi1) (-.f64 (cos.f64 lambda1) (*.f64 lambda2 (neg.f64 (sin.f64 lambda1)))))
(+.f64 (cos.f64 phi1) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1)))))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda1) (fma.f64 -1 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (cos.f64 lambda1)))))
(+.f64 (+.f64 (cos.f64 phi1) (cos.f64 lambda1)) (-.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) -1/2)) (*.f64 lambda2 (neg.f64 (sin.f64 lambda1)))))
(+.f64 (cos.f64 phi1) (fma.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2)) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 (neg.f64 lambda1)) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (sin.f64 (neg.f64 lambda1)))) (+.f64 (*.f64 -1 (*.f64 lambda2 (sin.f64 (neg.f64 lambda1)))) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (cos.f64 (neg.f64 lambda1))))))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda1) (fma.f64 1/6 (*.f64 (neg.f64 (sin.f64 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1 (*.f64 lambda2 (neg.f64 (sin.f64 lambda1))) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (cos.f64 lambda1))))))
(+.f64 (cos.f64 phi1) (+.f64 (*.f64 (neg.f64 (sin.f64 lambda1)) (+.f64 (*.f64 1/6 (pow.f64 lambda2 3)) (neg.f64 lambda2))) (+.f64 (*.f64 (*.f64 lambda2 lambda2) (*.f64 (cos.f64 lambda1) -1/2)) (cos.f64 lambda1))))
(+.f64 (cos.f64 phi1) (fma.f64 (neg.f64 (sin.f64 lambda1)) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2) (fma.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2)) (cos.f64 lambda1))))
(+.f64 (cos.f64 lambda1) (+.f64 (cos.f64 phi1) (fma.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2)) (*.f64 (sin.f64 lambda1) (-.f64 lambda2 (*.f64 1/6 (pow.f64 lambda2 3)))))))
(+.f64 (cos.f64 lambda1) (+.f64 (*.f64 (sin.f64 lambda1) (+.f64 lambda2 (*.f64 (pow.f64 lambda2 3) -1/6))) (fma.f64 (cos.f64 lambda1) (*.f64 lambda2 (*.f64 lambda2 -1/2)) (cos.f64 phi1))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 lambda2))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 (sin.f64 lambda2) lambda1)))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (cos.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (cos.f64 lambda2)))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 2))) (*.f64 (sin.f64 lambda2) lambda1))))
(+.f64 (cos.f64 phi1) (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2)))))
(+.f64 (+.f64 (cos.f64 phi1) (cos.f64 lambda2)) (fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))) (*.f64 lambda1 (sin.f64 lambda2))))
(+.f64 (cos.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (fma.f64 (*.f64 lambda1 (*.f64 -1/2 (cos.f64 lambda2))) lambda1 (cos.f64 lambda2))))
(+.f64 (cos.f64 phi1) (fma.f64 lambda1 (sin.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2))))
(+.f64 (*.f64 -1/6 (*.f64 (sin.f64 lambda2) (pow.f64 lambda1 3))) (+.f64 (cos.f64 phi1) (+.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 phi1) (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (*.f64 lambda1 (sin.f64 lambda2))))))
(+.f64 (+.f64 (cos.f64 lambda2) (fma.f64 -1/2 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 lambda2))) (*.f64 lambda1 (sin.f64 lambda2)))) (fma.f64 (*.f64 (sin.f64 lambda2) -1/6) (pow.f64 lambda1 3) (cos.f64 phi1)))
(+.f64 (fma.f64 lambda1 (sin.f64 lambda2) (fma.f64 (*.f64 lambda1 (*.f64 -1/2 (cos.f64 lambda2))) lambda1 (cos.f64 lambda2))) (fma.f64 (sin.f64 lambda2) (*.f64 -1/6 (pow.f64 lambda1 3)) (cos.f64 phi1)))
(+.f64 (cos.f64 phi1) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 (*.f64 -1/6 (pow.f64 lambda1 3)) lambda1))))
(+.f64 (cos.f64 phi1) (+.f64 (fma.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) (cos.f64 lambda2)) (*.f64 (sin.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda1) lambda2)) (cos.f64 phi1))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 1 (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1)
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))
(+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 1 (fma.f64 1/24 (pow.f64 phi1 4) (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 1 (fma.f64 1/24 (pow.f64 phi1 4) (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda1 lambda2)))))
(+.f64 (fma.f64 phi1 (*.f64 phi1 -1/2) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 1/24 (pow.f64 phi1 4) 1))
(+.f64 (fma.f64 phi1 (*.f64 phi1 -1/2) 1) (fma.f64 1/24 (pow.f64 phi1 4) (cos.f64 (-.f64 lambda1 lambda2))))
(+.f64 (*.f64 -1/720 (pow.f64 phi1 6)) (+.f64 1 (+.f64 (*.f64 1/24 (pow.f64 phi1 4)) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (cos.f64 (-.f64 lambda2 lambda1))))))
(fma.f64 -1/720 (pow.f64 phi1 6) (+.f64 1 (fma.f64 1/24 (pow.f64 phi1 4) (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (fma.f64 1/24 (pow.f64 phi1 4) (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda1 lambda2)))) (fma.f64 -1/720 (pow.f64 phi1 6) 1))
(+.f64 (fma.f64 phi1 (*.f64 phi1 -1/2) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 -1/720 (pow.f64 phi1 6) (fma.f64 1/24 (pow.f64 phi1 4) 1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2)))

localize34.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.5b
(+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
3.9b
(log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 102 to 16 computations (84.3% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
lambda1
@0
(log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda2
@-inf
(log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda2
@0
(log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda1
@-inf
(log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))
0.0ms
lambda1
@inf
(log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))

rewrite51.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
770×pow1_binary64
713×log1p-expm1-u_binary64
713×expm1-log1p-u_binary64
712×add-log-exp_binary64
697×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify48.0ms (0.2%)

Algorithm
egg-herbie
Rules
906×fma-def_binary64
864×unsub-neg_binary64
605×cancel-sign-sub-inv_binary64
365×distribute-rgt-neg-in_binary64
292×distribute-lft-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
047259
1131245
2339232
31203225
44281225
Stop Event
node limit
Counts
51 → 44
Calls
Call 1
Inputs
(sin.f64 (neg.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
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 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (sin.f64 (neg.f64 lambda2)) (fma.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) -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 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))) (sin.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (sin.f64 (neg.f64 lambda2)) (fma.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) -1/2))) (sin.f64 lambda2)))
(+.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2)) (sin.f64 (neg.f64 lambda2))) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(fma.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))) (*.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 lambda1 (*.f64 lambda1 -1/2) 1)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (sin.f64 lambda1))))
(-.f64 (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (sin.f64 lambda1)))))
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(fma.f64 (cos.f64 lambda1) (fma.f64 lambda2 -1 (*.f64 1/6 (pow.f64 lambda2 3))) (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(fma.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))

eval461.0ms (2.3%)

Compiler

Compiled 38722 to 12381 computations (68% saved)

prune286.0ms (1.4%)

Pruning

51 alts after pruning (51 fresh and 0 done)

PrunedKeptTotal
New1219241243
Fresh112738
Picked101
Done404
Total1235511286
Error
0.4b
Counts
1286 → 51
Alt Table
Click to see full alt table
StatusErrorProgram
20.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) 2)))
20.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
5.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (expm1.f64 (log1p.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))))))
13.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1)))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (cbrt.f64 (pow.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)) 3))))
10.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
18.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
13.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
13.5b
(+.f64 lambda1 (expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
0.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)) 1) 1)))
3.3b
(+.f64 lambda1 (cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) 3)))
18.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 (-.f64 lambda2 (+.f64 lambda1 phi1)) 1/2))) 2)))
24.7b
(+.f64 lambda1 (expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))))
23.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))))
28.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
22.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) 2)))
18.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))))
23.3b
(+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
24.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
31.5b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (cbrt.f64 (exp.f64 (*.f64 3 (log.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
24.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
20.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (exp.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
25.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) 1)))
25.5b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (+.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))))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
31.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
10.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
18.6b
(+.f64 lambda1 (log.f64 (exp.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))))
19.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 lambda2 lambda1) phi1) 1/2)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) 2)))
29.5b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (log.f64 (exp.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))))
22.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
26.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
23.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))))
14.2b
(+.f64 lambda1 (pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))) 3))
20.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (expm1.f64 (log1p.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))))
0.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
13.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))))
3.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (/.f64 (-.f64 (pow.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) 2) (pow.f64 (cos.f64 phi1) 2)) (-.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))))
25.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
0.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
20.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
20.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))) 1)))
14.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
10.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
0.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (cbrt.f64 (pow.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)) 3))))
14.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
0.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 1/3 (*.f64 3 (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))))))
3.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
13.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
0.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (+.f64 (+.f64 1 (cos.f64 phi1)) (cos.f64 (-.f64 lambda2 lambda1))) 1)))
Compiler

Compiled 2596 to 1716 computations (33.9% saved)

localize37.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.3b
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
0.5b
(fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 109 to 30 computations (72.5% saved)

series7.0ms (0%)

Counts
1 → 48
Calls

12 calls:

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

rewrite58.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
605×prod-diff_binary64
596×log-prod_binary64
352×pow2_binary64
252×fma-def_binary64
243×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify81.0ms (0.4%)

Algorithm
egg-herbie
Rules
680×fma-def_binary64
504×neg-sub0_binary64
490×associate-+l+_binary64
480×neg-mul-1_binary64
397×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01091113
13281090
29631040
334421024
469761024
Stop Event
node limit
Counts
69 → 57
Calls
Call 1
Inputs
(*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))))
(+.f64 (*.f64 1/18 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(+.f64 (*.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))) (*.f64 1/3 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(+.f64 (*.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))) (+.f64 (*.f64 1/3 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(+.f64 (*.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))) (+.f64 (*.f64 1/3 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
(+.f64 (*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (*.f64 1/72 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(+.f64 (*.f64 1/72 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))) (+.f64 (*.f64 -1/2160 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
(+.f64 (*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (*.f64 -1/6 (pow.f64 phi1 2)))
(+.f64 (*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 2)) (*.f64 1/72 (pow.f64 phi1 4))))
(+.f64 (*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 2)) (+.f64 (*.f64 -1/2160 (pow.f64 phi1 6)) (*.f64 1/72 (pow.f64 phi1 4)))))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
Outputs
(*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1)))
(+.f64 (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(fma.f64 -1/3 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1)) (*.f64 -1/3 (neg.f64 (*.f64 (sin.f64 lambda2) (*.f64 (cos.f64 phi2) lambda1)))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1)) (*.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 1/3 (sin.f64 lambda2))))
(fma.f64 1/3 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/3 (cos.f64 lambda2)) (*.f64 lambda1 (*.f64 1/3 (sin.f64 lambda2))))))
(+.f64 (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))))
(fma.f64 -1/3 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))
(fma.f64 -1/3 (neg.f64 (*.f64 (sin.f64 lambda2) (*.f64 (cos.f64 phi2) lambda1))) (fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) -1/6))))
(fma.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 1/3 (sin.f64 lambda2)) (fma.f64 1/3 (cos.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 1/3 (*.f64 lambda1 (*.f64 lambda1 -1/6))))))
(+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (+.f64 1/3 (*.f64 lambda1 (*.f64 lambda1 -1/6)))) (*.f64 lambda1 (*.f64 1/3 (sin.f64 lambda2))))))
(+.f64 (*.f64 1/18 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))) (+.f64 (*.f64 -1/3 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))))
(fma.f64 1/18 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (fma.f64 -1/3 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))))
(fma.f64 1/18 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (fma.f64 -1/3 (neg.f64 (*.f64 (sin.f64 lambda2) (*.f64 (cos.f64 phi2) lambda1))) (fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (*.f64 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1)) -1/6)))))
(+.f64 (fma.f64 1/3 (cos.f64 phi1) (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (+.f64 1/3 (*.f64 lambda1 (*.f64 lambda1 -1/6))))) (*.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (+.f64 (*.f64 -1/3 lambda1) (*.f64 1/18 (pow.f64 lambda1 3)))))
(+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (cos.f64 lambda2) (+.f64 1/3 (*.f64 lambda1 (*.f64 lambda1 -1/6)))) (*.f64 (neg.f64 (sin.f64 lambda2)) (+.f64 (*.f64 1/18 (pow.f64 lambda1 3)) (*.f64 -1/3 lambda1))))))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)))
(+.f64 (*.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))) (*.f64 1/3 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(*.f64 1/3 (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))))
(*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))))
(+.f64 (*.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))) (+.f64 (*.f64 1/3 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (fma.f64 1/3 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (*.f64 -1/6 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)))))
(fma.f64 1/3 (+.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)))))
(fma.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1))))) (*.f64 -1/6 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 lambda2)))))
(+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (*.f64 1/3 (+.f64 (cos.f64 lambda1) (*.f64 lambda2 (sin.f64 lambda1)))))))
(+.f64 (*.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (cos.f64 phi1))) (+.f64 (*.f64 1/3 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 -1/18 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (*.f64 -1/6 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (fma.f64 1/3 (*.f64 lambda2 (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (fma.f64 -1/18 (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (pow.f64 lambda2 3)) (*.f64 -1/6 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2))))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2)))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (*.f64 1/3 lambda2) (*.f64 -1/18 (pow.f64 lambda2 3))))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (fma.f64 -1/6 (*.f64 (cos.f64 lambda1) (*.f64 (cos.f64 phi2) (*.f64 lambda2 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (fma.f64 1/3 lambda2 (*.f64 -1/18 (pow.f64 lambda2 3))))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (cos.f64 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 lambda1) (*.f64 lambda2 lambda2))) (*.f64 (sin.f64 lambda1) (fma.f64 1/3 lambda2 (*.f64 -1/18 (pow.f64 lambda2 3)))))))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))))
(*.f64 1/3 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(fma.f64 1/3 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2))))
(fma.f64 1/3 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2))))
(+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/6)) 1/3)))
(+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 1/3 (*.f64 (*.f64 -1/6 phi2) phi2))))
(+.f64 (*.f64 1/72 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2)))))
(fma.f64 1/72 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 1/3 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)))))
(fma.f64 1/72 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (fma.f64 1/3 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2)))))
(fma.f64 1/3 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/6)) (*.f64 1/72 (pow.f64 phi2 4)))))
(+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 1/3 (+.f64 (*.f64 1/72 (pow.f64 phi2 4)) (*.f64 (*.f64 -1/6 phi2) phi2)))))
(+.f64 (*.f64 1/72 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))) (+.f64 (*.f64 -1/2160 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))))
(fma.f64 1/72 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 1/3 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda1 lambda2))) (fma.f64 -1/2160 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (*.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2))))))
(fma.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) 1/72) (pow.f64 phi2 4) (fma.f64 1/3 (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))) (fma.f64 -1/6 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2)) (*.f64 (*.f64 -1/2160 (pow.f64 phi2 6)) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/72 (pow.f64 phi2 4)) 1/3)) (fma.f64 1/3 (cos.f64 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 phi2 (*.f64 phi2 -1/6)) (*.f64 -1/2160 (pow.f64 phi2 6))))))
(+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (+.f64 (*.f64 -1/2160 (pow.f64 phi2 6)) (*.f64 (*.f64 -1/6 phi2) phi2)) (+.f64 1/3 (*.f64 1/72 (pow.f64 phi2 4))))))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))
(+.f64 1/3 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1/3))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/3 (cos.f64 phi2)) 1/3)
(+.f64 (*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (*.f64 -1/6 (pow.f64 phi1 2)))
(fma.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1) (*.f64 -1/6 (*.f64 phi1 phi1)))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1) (*.f64 phi1 (*.f64 phi1 -1/6)))
(+.f64 (*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 2)) (*.f64 1/72 (pow.f64 phi1 4))))
(fma.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1) (fma.f64 -1/6 (*.f64 phi1 phi1) (*.f64 1/72 (pow.f64 phi1 4))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1) (fma.f64 -1/6 (*.f64 phi1 phi1) (*.f64 1/72 (pow.f64 phi1 4))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1) (fma.f64 phi1 (*.f64 phi1 -1/6) (*.f64 1/72 (pow.f64 phi1 4))))
(+.f64 (*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))) (+.f64 (*.f64 -1/6 (pow.f64 phi1 2)) (+.f64 (*.f64 -1/2160 (pow.f64 phi1 6)) (*.f64 1/72 (pow.f64 phi1 4)))))
(fma.f64 1/3 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1) (fma.f64 -1/6 (*.f64 phi1 phi1) (fma.f64 -1/2160 (pow.f64 phi1 6) (*.f64 1/72 (pow.f64 phi1 4)))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1) (fma.f64 -1/6 (*.f64 phi1 phi1) (fma.f64 1/72 (pow.f64 phi1 4) (*.f64 -1/2160 (pow.f64 phi1 6)))))
(fma.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1) (fma.f64 phi1 (*.f64 phi1 -1/6) (fma.f64 1/72 (pow.f64 phi1 4) (*.f64 -1/2160 (pow.f64 phi1 6)))))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))
(*.f64 1/3 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)))
(*.f64 1/3 (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))

localize25.0ms (0.1%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.1b
(*.f64 (cos.f64 phi2) (sin.f64 lambda1))
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1))
0.6b
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 56 to 19 computations (66.1% saved)

series11.0ms (0.1%)

Counts
2 → 16
Calls

15 calls:

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

rewrite67.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
608×prod-diff_binary64
598×log-prod_binary64
349×pow2_binary64
325×fma-def_binary64
240×pow1/3_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify62.0ms (0.3%)

Algorithm
egg-herbie
Rules
992×unsub-neg_binary64
925×fma-def_binary64
468×distribute-rgt-neg-in_binary64
391×distribute-lft-neg-in_binary64
323×distribute-rgt-neg-out_binary64
Iterations

Useful iterations: 4 (0.0ms)

IterNodesCost
061346
1153336
2361320
31137292
42881289
55507289
Stop Event
node limit
Counts
58 → 59
Calls
Call 1
Inputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(sin.f64 lambda1)
(+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 4)))))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 6))) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 4))))))
(*.f64 (cos.f64 phi2) lambda1)
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 5)))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 7))) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 5))))))
Outputs
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) 1))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (fma.f64 -1 lambda1 lambda2))))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 1 (cos.f64 (-.f64 lambda2 lambda1))))
(sin.f64 lambda1)
(+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 2))))
(+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 phi2 phi2))))
(fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 phi2 phi2)) (sin.f64 lambda1))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 lambda1))
(*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1))
(+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 4)))))
(+.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 phi2 phi2)) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 4)))))
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 phi2 phi2)) (sin.f64 lambda1)) (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 lambda1) 1/24)))
(+.f64 (sin.f64 lambda1) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (*.f64 1/24 (pow.f64 phi2 4))))
(*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)))
(+.f64 (*.f64 -1/720 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 6))) (+.f64 (sin.f64 lambda1) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 4))))))
(fma.f64 -1/720 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 6)) (+.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 phi2 phi2)) (*.f64 1/24 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 4))))))
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 phi2 phi2)) (*.f64 (pow.f64 phi2 4) (*.f64 (sin.f64 lambda1) 1/24))) (fma.f64 -1/720 (*.f64 (sin.f64 lambda1) (pow.f64 phi2 6)) (sin.f64 lambda1)))
(+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (sin.f64 lambda1)) (*.f64 (sin.f64 lambda1) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6)))))
(fma.f64 (sin.f64 lambda1) (fma.f64 phi2 (*.f64 phi2 -1/2) (*.f64 1/24 (pow.f64 phi2 4))) (*.f64 (sin.f64 lambda1) (fma.f64 -1/720 (pow.f64 phi2 6) 1)))
(*.f64 (sin.f64 lambda1) (+.f64 (fma.f64 -1/2 (*.f64 phi2 phi2) 1) (fma.f64 1/24 (pow.f64 phi2 4) (*.f64 -1/720 (pow.f64 phi2 6)))))
(*.f64 (cos.f64 phi2) lambda1)
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))
(fma.f64 (cos.f64 phi2) lambda1 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))
(fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (*.f64 (cos.f64 phi2) lambda1))
(*.f64 (cos.f64 phi2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))))
(*.f64 (cos.f64 phi2) (fma.f64 -1/6 (pow.f64 lambda1 3) lambda1))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 5)))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 5)))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 5) 1/120))))
(fma.f64 (cos.f64 phi2) (*.f64 1/120 (pow.f64 lambda1 5)) (*.f64 (cos.f64 phi2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(*.f64 (cos.f64 phi2) (+.f64 lambda1 (fma.f64 -1/6 (pow.f64 lambda1 3) (*.f64 1/120 (pow.f64 lambda1 5)))))
(+.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (*.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))) (+.f64 (*.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 7))) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 5))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (fma.f64 -1/5040 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 7)) (*.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 5))))))
(fma.f64 (cos.f64 phi2) lambda1 (fma.f64 -1/6 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)) (fma.f64 1/120 (*.f64 (cos.f64 phi2) (pow.f64 lambda1 5)) (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 7) -1/5040)))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 1/120 (pow.f64 lambda1 5)) (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(*.f64 (cos.f64 phi2) (+.f64 (fma.f64 -1/6 (pow.f64 lambda1 3) lambda1) (fma.f64 1/120 (pow.f64 lambda1 5) (*.f64 -1/5040 (pow.f64 lambda1 7)))))
(*.f64 (cos.f64 phi2) (+.f64 (fma.f64 -1/6 (pow.f64 lambda1 3) (*.f64 -1/5040 (pow.f64 lambda1 7))) (fma.f64 1/120 (pow.f64 lambda1 5) lambda1)))

localize44.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.2b
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) 2))
0.4b
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
4.6b
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 95 to 45 computations (52.6% saved)

series11.0ms (0.1%)

Counts
3 → 68
Calls

21 calls:

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

rewrite83.0ms (0.4%)

Algorithm
batch-egg-rewrite
Rules
802×log-prod_binary64
418×fma-def_binary64
314×expm1-udef_binary64
314×log1p-udef_binary64
257×log-pow_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify77.0ms (0.4%)

Algorithm
egg-herbie
Rules
684×fma-def_binary64
534×distribute-rgt-out_binary64
496×associate-*r*_binary64
485×associate-*l*_binary64
336×distribute-lft-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01191817
13551733
29781684
345321678
Stop Event
node limit
Counts
139 → 111
Calls
Call 1
Inputs
(cos.f64 (*.f64 -1/2 lambda1))
(+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1)))) (cos.f64 (*.f64 -1/2 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1)))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 -1/2 lambda1)))) (cos.f64 (*.f64 -1/2 lambda1))))
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 lambda2 3) (sin.f64 (*.f64 -1/2 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1)))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 -1/2 lambda1)))) (cos.f64 (*.f64 -1/2 lambda1)))))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (*.f64 1/2 lambda2))
(+.f64 (cos.f64 (*.f64 1/2 lambda2)) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) lambda1)))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 2))) (+.f64 (cos.f64 (*.f64 1/2 lambda2)) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) lambda1))))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 2))) (+.f64 (cos.f64 (*.f64 1/2 lambda2)) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) lambda1)))))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 lambda2 2)) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 lambda2 2)) (+.f64 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/8 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (*.f64 1/24 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))))
(pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1) (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2)) (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 -1/16 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))) (pow.f64 lambda1 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2)) (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))))
(pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)))
Outputs
(cos.f64 (*.f64 -1/2 lambda1))
(+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1)))) (cos.f64 (*.f64 -1/2 lambda1)))
(fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1))) (cos.f64 (*.f64 -1/2 lambda1)))
(+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1)))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 -1/2 lambda1)))) (cos.f64 (*.f64 -1/2 lambda1))))
(fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1))) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 lambda2)) (cos.f64 (*.f64 -1/2 lambda1))))
(fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda2 lambda2)) 1) (cos.f64 (*.f64 -1/2 lambda1))))
(fma.f64 lambda2 (*.f64 -1/2 (sin.f64 (*.f64 -1/2 lambda1))) (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (fma.f64 -1/8 (*.f64 lambda2 lambda2) 1)))
(+.f64 (*.f64 1/48 (*.f64 (pow.f64 lambda2 3) (sin.f64 (*.f64 -1/2 lambda1)))) (+.f64 (*.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1)))) (+.f64 (*.f64 -1/8 (*.f64 (pow.f64 lambda2 2) (cos.f64 (*.f64 -1/2 lambda1)))) (cos.f64 (*.f64 -1/2 lambda1)))))
(fma.f64 1/48 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (pow.f64 lambda2 3)) (fma.f64 -1/2 (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1))) (fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 lambda2)) (cos.f64 (*.f64 -1/2 lambda1)))))
(+.f64 (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda2 lambda2)) 1) (cos.f64 (*.f64 -1/2 lambda1))) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (+.f64 (*.f64 1/48 (pow.f64 lambda2 3)) (*.f64 -1/2 lambda2))))
(fma.f64 (sin.f64 (*.f64 -1/2 lambda1)) (fma.f64 1/48 (pow.f64 lambda2 3) (*.f64 -1/2 lambda2)) (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (fma.f64 -1/8 (*.f64 lambda2 lambda2) 1)))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(cos.f64 (*.f64 1/2 lambda2))
(cos.f64 (*.f64 lambda2 1/2))
(cos.f64 (*.f64 -1/2 lambda2))
(+.f64 (cos.f64 (*.f64 1/2 lambda2)) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) lambda1)))
(+.f64 (cos.f64 (*.f64 lambda2 1/2)) (*.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 lambda2 1/2)))))
(fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 lambda2 1/2))) (cos.f64 (*.f64 lambda2 1/2)))
(fma.f64 lambda1 (*.f64 1/2 (sin.f64 (*.f64 lambda2 1/2))) (cos.f64 (*.f64 lambda2 1/2)))
(fma.f64 lambda1 (*.f64 1/2 (sin.f64 (*.f64 lambda2 1/2))) (cos.f64 (*.f64 -1/2 lambda2)))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 2))) (+.f64 (cos.f64 (*.f64 1/2 lambda2)) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) lambda1))))
(fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 (*.f64 lambda2 1/2)) (*.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 lambda2 1/2))))))
(fma.f64 -1/8 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 (*.f64 lambda2 1/2)))) (fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 lambda2 1/2))) (cos.f64 (*.f64 lambda2 1/2))))
(fma.f64 (sin.f64 (*.f64 lambda2 1/2)) (*.f64 lambda1 1/2) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda1 lambda1)) 1) (cos.f64 (*.f64 lambda2 1/2))))
(fma.f64 lambda1 (*.f64 1/2 (sin.f64 (*.f64 lambda2 1/2))) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/8)) 1) (cos.f64 (*.f64 -1/2 lambda2))))
(+.f64 (*.f64 -1/8 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 2))) (+.f64 (cos.f64 (*.f64 1/2 lambda2)) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (pow.f64 lambda1 3))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) lambda1)))))
(fma.f64 -1/8 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (*.f64 lambda1 lambda1)) (+.f64 (cos.f64 (*.f64 lambda2 1/2)) (fma.f64 -1/48 (*.f64 (sin.f64 (*.f64 lambda2 1/2)) (pow.f64 lambda1 3)) (*.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 lambda2 1/2)))))))
(+.f64 (fma.f64 -1/8 (*.f64 lambda1 (*.f64 lambda1 (cos.f64 (*.f64 lambda2 1/2)))) (fma.f64 1/2 (*.f64 lambda1 (sin.f64 (*.f64 lambda2 1/2))) (cos.f64 (*.f64 lambda2 1/2)))) (*.f64 (sin.f64 (*.f64 lambda2 1/2)) (*.f64 (pow.f64 lambda1 3) -1/48)))
(+.f64 (*.f64 (sin.f64 (*.f64 lambda2 1/2)) (+.f64 (*.f64 lambda1 1/2) (*.f64 -1/48 (pow.f64 lambda1 3)))) (*.f64 (+.f64 (*.f64 -1/8 (*.f64 lambda1 lambda1)) 1) (cos.f64 (*.f64 lambda2 1/2))))
(+.f64 (*.f64 (*.f64 lambda1 (sin.f64 (*.f64 lambda2 1/2))) (+.f64 (*.f64 -1/48 (*.f64 lambda1 lambda1)) 1/2)) (*.f64 (+.f64 (*.f64 lambda1 (*.f64 lambda1 -1/8)) 1) (cos.f64 (*.f64 -1/2 lambda2))))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2)))
(cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2)))
(cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))
(pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)
(+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))
(fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (sin.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))
(-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1)))))
(*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (-.f64 (cos.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1)))))
(*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (+.f64 (cos.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 (sin.f64 (*.f64 lambda1 1/2)))))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 lambda2 2)) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)))
(fma.f64 (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) -1/4)) (*.f64 lambda2 lambda2) (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (sin.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2)))
(fma.f64 (*.f64 lambda2 lambda2) (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) -1/4)) (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1))))))
(fma.f64 (*.f64 lambda2 lambda2) (fma.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) -1/4 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (-.f64 (cos.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1))))))
(+.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 lambda2 (fma.f64 lambda2 (fma.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) -1/4 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (sin.f64 (*.f64 lambda1 1/2))))))
(+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))) (pow.f64 lambda2 2)) (+.f64 (*.f64 (pow.f64 lambda2 3) (+.f64 (*.f64 1/8 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))) (*.f64 1/24 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1)))))) (+.f64 (*.f64 -1 (*.f64 lambda2 (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) (cos.f64 (*.f64 -1/2 lambda1))))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))))
(fma.f64 (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) -1/4)) (*.f64 lambda2 lambda2) (fma.f64 (pow.f64 lambda2 3) (*.f64 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (sin.f64 (*.f64 -1/2 lambda1))) 1/6) (fma.f64 -1 (*.f64 lambda2 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (sin.f64 (*.f64 -1/2 lambda1)))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2))))
(fma.f64 (*.f64 lambda2 lambda2) (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) -1/4)) (fma.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (*.f64 (sin.f64 (*.f64 -1/2 lambda1)) 1/6)) (-.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (*.f64 lambda2 (sin.f64 (*.f64 -1/2 lambda1)))))))
(fma.f64 (*.f64 lambda2 lambda2) (fma.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) -1/4 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2))) (+.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (*.f64 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (sin.f64 (*.f64 -1/2 lambda1))) (-.f64 (*.f64 (pow.f64 lambda2 3) 1/6) lambda2))))
(+.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) (fma.f64 lambda2 (*.f64 lambda2 (fma.f64 (pow.f64 (cos.f64 (*.f64 -1/2 lambda1)) 2) -1/4 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 -1/2 lambda1)) 2)))) (*.f64 (*.f64 (cos.f64 (*.f64 -1/2 lambda1)) (sin.f64 (*.f64 -1/2 lambda1))) (-.f64 (*.f64 (pow.f64 lambda2 3) 1/6) lambda2))))
(pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)
(pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 lambda2)) 2)
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1) (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))
(fma.f64 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))))) lambda1 (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))
(fma.f64 lambda1 (*.f64 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) 1) (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))
(fma.f64 lambda1 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))
(fma.f64 lambda1 (*.f64 (cos.f64 (*.f64 -1/2 lambda2)) (sin.f64 (*.f64 lambda2 1/2))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda2)) 2))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2)) (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2)))
(fma.f64 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))))) lambda1 (fma.f64 (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 lambda2 1/2)) 2) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))) (*.f64 lambda1 lambda1) (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2)))
(fma.f64 lambda1 (*.f64 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) 1) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 lambda2 1/2)) 2) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))) (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2)))
(fma.f64 lambda1 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) (fma.f64 lambda1 (*.f64 lambda1 (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 lambda2 1/2)) 2) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2)))) (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2)))
(fma.f64 lambda1 (*.f64 (cos.f64 (*.f64 -1/2 lambda2)) (sin.f64 (*.f64 lambda2 1/2))) (fma.f64 lambda1 (*.f64 lambda1 (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 lambda2 1/2)) 2) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda2)) 2)))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda2)) 2)))
(+.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))) lambda1) (+.f64 (*.f64 (+.f64 (*.f64 -1/48 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 -1/16 (*.f64 (cos.f64 (*.f64 1/2 lambda2)) (sin.f64 (*.f64 1/2 lambda2)))) (+.f64 (*.f64 -1/48 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2)))) (*.f64 -1/16 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) (cos.f64 (*.f64 1/2 lambda2))))))) (pow.f64 lambda1 3)) (+.f64 (*.f64 (+.f64 (*.f64 1/4 (pow.f64 (sin.f64 (*.f64 1/2 lambda2)) 2)) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))) (pow.f64 lambda1 2)) (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2))))
(fma.f64 (*.f64 1/2 (+.f64 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))))) lambda1 (fma.f64 (+.f64 (*.f64 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) -1/12) (*.f64 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) -1/12)) (pow.f64 lambda1 3) (fma.f64 (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 lambda2 1/2)) 2) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))) (*.f64 lambda1 lambda1) (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))))
(fma.f64 lambda1 (*.f64 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) 1) (fma.f64 (pow.f64 lambda1 3) (*.f64 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) -1/6) (fma.f64 (*.f64 lambda1 lambda1) (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 lambda2 1/2)) 2) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))) (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))))
(fma.f64 lambda1 (*.f64 (cos.f64 (*.f64 lambda2 1/2)) (sin.f64 (*.f64 lambda2 1/2))) (fma.f64 lambda1 (*.f64 lambda1 (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 lambda2 1/2)) 2) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2)))) (fma.f64 (pow.f64 lambda1 3) (*.f64 (sin.f64 (*.f64 lambda2 1/2)) (*.f64 (cos.f64 (*.f64 lambda2 1/2)) -1/6)) (pow.f64 (cos.f64 (*.f64 lambda2 1/2)) 2))))
(+.f64 (fma.f64 lambda1 (*.f64 lambda1 (fma.f64 1/4 (pow.f64 (sin.f64 (*.f64 lambda2 1/2)) 2) (*.f64 -1/4 (pow.f64 (cos.f64 (*.f64 -1/2 lambda2)) 2)))) (pow.f64 (cos.f64 (*.f64 -1/2 lambda2)) 2)) (*.f64 lambda1 (*.f64 (*.f64 (cos.f64 (*.f64 -1/2 lambda2)) (*.f64 2 (sin.f64 (*.f64 lambda2 1/2)))) (+.f64 1/2 (*.f64 (*.f64 lambda1 lambda1) -1/12)))))
(pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)
(pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (+.f64 (*.f64 -1 lambda1) lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (+.f64 (*.f64 -1 lambda2) lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2)))
(atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 2 (pow.f64 (cos.f64 (*.f64 -1/2 (-.f64 lambda1 lambda2))) 2)))

localize38.0ms (0.2%)

Local error

Found 4 expressions with local error:

NewErrorProgram
0.6b
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)
2.5b
(sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
4.3b
(cos.f64 (-.f64 lambda1 lambda2))
4.8b
(sin.f64 (-.f64 lambda1 lambda2))
Compiler

Compiled 87 to 36 computations (58.6% saved)

series2.0ms (0%)

Counts
1 → 24
Calls

6 calls:

TimeVariablePointExpression
0.0ms
lambda1
@0
(sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
0.0ms
lambda2
@0
(sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
0.0ms
lambda1
@-inf
(sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
0.0ms
lambda1
@inf
(sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))
0.0ms
lambda2
@-inf
(sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))

rewrite51.0ms (0.3%)

Algorithm
batch-egg-rewrite
Rules
845×pow1_binary64
787×add-log-exp_binary64
786×log1p-expm1-u_binary64
786×expm1-log1p-u_binary64
770×add-exp-log_binary64
Iterations

Useful iterations: 0 (0.0ms)

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

simplify50.0ms (0.3%)

Algorithm
egg-herbie
Rules
906×fma-def_binary64
864×unsub-neg_binary64
605×cancel-sign-sub-inv_binary64
365×distribute-rgt-neg-in_binary64
292×distribute-lft-neg-out_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
047259
1131245
2339232
31203225
44281225
Stop Event
node limit
Counts
53 → 46
Calls
Call 1
Inputs
(sin.f64 (neg.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
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 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 lambda2) lambda1))
(-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))
(+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1)))
(+.f64 (sin.f64 (neg.f64 lambda2)) (fma.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1)))
(-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) -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 (fma.f64 lambda1 (*.f64 (sin.f64 lambda2) 1/2) (cos.f64 lambda2))) (sin.f64 lambda2))
(+.f64 (*.f64 -1/6 (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 3))) (+.f64 (sin.f64 (neg.f64 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2))) (*.f64 (cos.f64 (neg.f64 lambda2)) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (+.f64 (sin.f64 (neg.f64 lambda2)) (fma.f64 -1/2 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 lambda1 lambda1)) (*.f64 (cos.f64 lambda2) lambda1))))
(fma.f64 -1/6 (*.f64 (cos.f64 lambda2) (pow.f64 lambda1 3)) (-.f64 (fma.f64 (cos.f64 lambda2) lambda1 (*.f64 (*.f64 lambda1 lambda1) (*.f64 (neg.f64 (sin.f64 lambda2)) -1/2))) (sin.f64 lambda2)))
(+.f64 (fma.f64 (*.f64 lambda1 lambda1) (*.f64 1/2 (sin.f64 lambda2)) (sin.f64 (neg.f64 lambda2))) (*.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3)))))
(fma.f64 (cos.f64 lambda2) (+.f64 lambda1 (*.f64 -1/6 (pow.f64 lambda1 3))) (*.f64 (neg.f64 (sin.f64 lambda2)) (fma.f64 lambda1 (*.f64 lambda1 -1/2) 1)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 lambda1)
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (sin.f64 lambda1))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (sin.f64 lambda1))
(-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1)))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (sin.f64 lambda1))))
(-.f64 (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (sin.f64 lambda1)) (*.f64 lambda2 (cos.f64 lambda1)))
(-.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)) (*.f64 lambda2 (cos.f64 lambda1)))
(+.f64 (*.f64 -1 (*.f64 lambda2 (cos.f64 lambda1))) (+.f64 (*.f64 1/6 (*.f64 (pow.f64 lambda2 3) (cos.f64 lambda1))) (+.f64 (sin.f64 lambda1) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (sin.f64 lambda1))))))
(fma.f64 -1 (*.f64 lambda2 (cos.f64 lambda1)) (fma.f64 1/6 (*.f64 (cos.f64 lambda1) (pow.f64 lambda2 3)) (+.f64 (sin.f64 lambda1) (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (sin.f64 lambda1)))))
(+.f64 (fma.f64 -1/2 (*.f64 (sin.f64 lambda1) (*.f64 lambda2 lambda2)) (sin.f64 lambda1)) (*.f64 (cos.f64 lambda1) (+.f64 (neg.f64 lambda2) (*.f64 1/6 (pow.f64 lambda2 3)))))
(fma.f64 (cos.f64 lambda1) (fma.f64 lambda2 -1 (*.f64 1/6 (pow.f64 lambda2 3))) (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1)))
(fma.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 lambda1) (-.f64 (*.f64 1/6 (pow.f64 lambda2 3)) lambda2)))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))
(sin.f64 (+.f64 (*.f64 -1 lambda2) lambda1))
(sin.f64 (-.f64 lambda1 lambda2))

localize66.0ms (0.3%)

Local error

Found 4 expressions with local error:

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

Compiled 142 to 51 computations (64.1% saved)

series20.0ms (0.1%)

Counts
2 → 43
Calls

21 calls:

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

rewrite97.0ms (0.5%)

Algorithm
batch-egg-rewrite
Rules
832×fma-def_binary64
431×fma-neg_binary64
321×expm1-udef_binary64
321×log1p-udef_binary64
252×log-pow_binary64
Iterations

Useful iterations: 2 (0.0ms)

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

simplify72.0ms (0.4%)

Algorithm
egg-herbie
Rules
979×fma-def_binary64
494×associate-+l+_binary64
470×fma-neg_binary64
373×associate-+r+_binary64
341×associate-*l*_binary64
Iterations

Useful iterations: 3 (0.0ms)

IterNodesCost
01181149
13601071
21083965
34429916
Stop Event
node limit
Counts
139 → 153
Calls
Call 1
Inputs
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 1 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))))))))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 -1/2 (pow.f64 phi1 2)))))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (*.f64 -1/2 (pow.f64 phi1 2)))))))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(*.f64 -1/2 (pow.f64 phi1 2))
(*.f64 -1/2 (pow.f64 phi1 2))
(*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 lambda1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(cos.f64 (-.f64 lambda1 lambda2))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))))))
Outputs
(+.f64 1 (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) 1))
(+.f64 1 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))
(+.f64 1 (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(+.f64 1 (-.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 1 (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))))
(+.f64 (-.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))) (*.f64 lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) 1))
(+.f64 1 (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) lambda1)) (sin.f64 lambda2)))))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 1 (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 -1/2 (pow.f64 phi1 2)) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (+.f64 1 (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 (*.f64 1/6 (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))))
(+.f64 (-.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2))))))) (*.f64 lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))) (fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) 1))
(+.f64 (+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (pow.f64 lambda1 3) (*.f64 -1/6 (sin.f64 lambda2))) (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))))))
(+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 phi1 phi1)) (*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1))))))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(fma.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(fma.f64 phi1 (*.f64 -1/2 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(fma.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(fma.f64 phi1 (*.f64 -1/2 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(fma.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(fma.f64 phi1 (*.f64 -1/2 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 (*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(fma.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(fma.f64 phi1 (*.f64 -1/2 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 lambda1) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (fma.f64 phi1 (*.f64 -1/2 phi1) 1))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))) (*.f64 -1/2 (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 phi1 phi1)))))
(+.f64 1 (fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1/2 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2) (*.f64 phi1 phi1)))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (fma.f64 -1/2 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2) (*.f64 phi1 phi1)) 1))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1)))) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))) (*.f64 -1/2 (pow.f64 phi1 2)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))) (*.f64 -1/2 (+.f64 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)) (*.f64 phi1 phi1))))))
(+.f64 (fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 -1/2 (fma.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2) (*.f64 phi1 phi1)))) (fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) 1))
(+.f64 1 (+.f64 (fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 phi1 phi1))) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3))))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.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 -1/2 (*.f64 phi1 phi1))))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(fma.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(fma.f64 phi1 (*.f64 -1/2 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(fma.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(fma.f64 phi1 (*.f64 -1/2 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(fma.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(fma.f64 phi1 (*.f64 -1/2 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 1 (+.f64 (*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))
(fma.f64 (cos.f64 (fma.f64 -1 lambda1 lambda2)) (cos.f64 phi2) (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(fma.f64 phi1 (*.f64 -1/2 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(fma.f64 -1/2 (*.f64 phi1 phi1) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (*.f64 -1/2 (pow.f64 phi1 2))))
(+.f64 (+.f64 1 (*.f64 -1/2 (*.f64 phi1 phi1))) (cos.f64 (-.f64 lambda1 lambda2)))
(+.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (fma.f64 phi1 (*.f64 -1/2 phi1) 1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (*.f64 -1/2 (pow.f64 phi1 2)))))
(+.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1) (*.f64 -1/2 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (*.f64 phi1 phi1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2) (*.f64 phi1 phi1)) 1))
(+.f64 (fma.f64 phi1 (*.f64 -1/2 phi1) 1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) 1) (*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/2 (pow.f64 phi1 2))))))
(+.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (*.f64 -1/2 (*.f64 phi1 phi1)))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (fma.f64 -1/2 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2) (*.f64 phi1 phi1)) 1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi2 4) 1/24))))
(+.f64 (fma.f64 -1/2 (fma.f64 phi1 phi1 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1))))) 1) (*.f64 (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1))) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (+.f64 (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))) (*.f64 -1/2 (pow.f64 phi1 2)))))))
(+.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (fma.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6)) (*.f64 -1/2 (*.f64 phi1 phi1))))))
(+.f64 1 (+.f64 (+.f64 (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi2 6) -1/720))) (*.f64 -1/2 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 phi2 phi2) (*.f64 phi1 phi1)))) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 1 (+.f64 (fma.f64 -1/2 (*.f64 phi1 phi1) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4))))) (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))) (+.f64 1 (fma.f64 -1/2 (*.f64 phi1 phi1) (cos.f64 (-.f64 lambda2 lambda1)))))
(+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))
(+.f64 1 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))
(fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)) 1)
(*.f64 -1/2 (pow.f64 phi1 2))
(*.f64 -1/2 (*.f64 phi1 phi1))
(*.f64 -1/2 (pow.f64 phi1 2))
(*.f64 -1/2 (*.f64 phi1 phi1))
(*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 lambda2))
(+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))
(fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))
(-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2)))))
(*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda1 (sin.f64 lambda2)) (cos.f64 lambda2)))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2)))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (*.f64 (cos.f64 phi2) (cos.f64 lambda2))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (-.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (sin.f64 lambda2)))))
(*.f64 (cos.f64 phi2) (+.f64 (cos.f64 lambda2) (*.f64 lambda1 (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) lambda1)) (sin.f64 lambda2)))))
(+.f64 (*.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 (neg.f64 lambda2)) (pow.f64 lambda1 2)))) (+.f64 (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))) (*.f64 1/6 (*.f64 (sin.f64 (neg.f64 lambda2)) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3)))))))
(fma.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda2)) (*.f64 lambda1 lambda1)) (fma.f64 -1 (*.f64 (neg.f64 (sin.f64 lambda2)) (*.f64 (cos.f64 phi2) lambda1)) (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 (*.f64 1/6 (neg.f64 (sin.f64 lambda2))) (*.f64 (cos.f64 phi2) (pow.f64 lambda1 3))))))
(fma.f64 -1/2 (*.f64 (cos.f64 phi2) (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (-.f64 (fma.f64 (cos.f64 phi2) (cos.f64 lambda2) (*.f64 1/6 (*.f64 (cos.f64 phi2) (*.f64 (pow.f64 lambda1 3) (neg.f64 (sin.f64 lambda2)))))) (*.f64 lambda1 (neg.f64 (*.f64 (sin.f64 lambda2) (cos.f64 phi2))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 lambda2) (*.f64 lambda1 lambda1))) (cos.f64 lambda2))) (*.f64 (*.f64 (cos.f64 phi2) (neg.f64 (sin.f64 lambda2))) (+.f64 (neg.f64 lambda1) (*.f64 1/6 (pow.f64 lambda1 3)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 (+.f64 (*.f64 -1/2 (*.f64 lambda1 lambda1)) 1) (cos.f64 lambda2)) (*.f64 (neg.f64 (sin.f64 lambda2)) (-.f64 (*.f64 1/6 (pow.f64 lambda1 3)) lambda1))))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (neg.f64 (+.f64 (*.f64 -1 lambda1) lambda2))) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 phi2) (cos.f64 lambda1))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)))
(*.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)))
(+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1))))))
(+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2))))
(fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (cos.f64 lambda1)) (cos.f64 phi2)))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 -1/2 (*.f64 lambda2 (*.f64 lambda2 (cos.f64 lambda1)))) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1))))
(*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (*.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (cos.f64 lambda1))))
(+.f64 (*.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1)))) (+.f64 (*.f64 (cos.f64 phi2) (*.f64 lambda2 (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 -1/2 (*.f64 (pow.f64 lambda2 2) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)))))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (+.f64 (*.f64 (cos.f64 phi2) (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1))) (*.f64 -1/2 (*.f64 (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 lambda2 lambda2)))))
(fma.f64 -1/6 (*.f64 (pow.f64 lambda2 3) (*.f64 (cos.f64 phi2) (sin.f64 lambda1))) (fma.f64 (cos.f64 phi2) (fma.f64 lambda2 (sin.f64 lambda1) (cos.f64 lambda1)) (*.f64 (*.f64 (*.f64 -1/2 (*.f64 lambda2 lambda2)) (cos.f64 lambda1)) (cos.f64 phi2))))
(fma.f64 (fma.f64 -1/2 (*.f64 lambda2 lambda2) 1) (*.f64 (cos.f64 phi2) (cos.f64 lambda1)) (*.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 lambda2 (*.f64 -1/6 (pow.f64 lambda2 3)))))
(*.f64 (cos.f64 phi2) (+.f64 (*.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 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (cos.f64 (+.f64 (*.f64 -1 lambda2) lambda1)) (cos.f64 phi2))
(*.f64 (cos.f64 phi2) (cos.f64 (fma.f64 -1 lambda1 lambda2)))
(*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(cos.f64 (-.f64 lambda1 lambda2))
(cos.f64 (-.f64 lambda2 lambda1))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 (*.f64 -1/2 (cos.f64 (-.f64 lambda1 lambda2))) (*.f64 phi2 phi2)))
(fma.f64 (*.f64 -1/2 (cos.f64 (-.f64 lambda2 lambda1))) (*.f64 phi2 phi2) (cos.f64 (-.f64 lambda2 lambda1)))
(*.f64 (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi2 4) 1/24))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))))
(*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) 1)))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (+.f64 (*.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 2))) (+.f64 (*.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4))) (*.f64 -1/720 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 6))))))
(+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (*.f64 phi2 phi2)) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (pow.f64 phi2 4)) (*.f64 (*.f64 -1/720 (cos.f64 (-.f64 lambda1 lambda2))) (pow.f64 phi2 6)))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (fma.f64 -1/2 (*.f64 phi2 (*.f64 phi2 (cos.f64 (-.f64 lambda2 lambda1)))) (fma.f64 1/24 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (pow.f64 phi2 4)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (pow.f64 phi2 6) -1/720)))))
(+.f64 (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (*.f64 1/24 (pow.f64 phi2 4)))) (*.f64 (+.f64 (*.f64 -1/720 (pow.f64 phi2 6)) 1) (cos.f64 (-.f64 lambda2 lambda1))))
(+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 (*.f64 -1/2 (*.f64 phi2 phi2)) (+.f64 (*.f64 1/24 (pow.f64 phi2 4)) (*.f64 -1/720 (pow.f64 phi2 6))))))

eval597.0ms (3%)

Compiler

Compiled 32485 to 12610 computations (61.2% saved)

prune377.0ms (1.9%)

Pruning

58 alts after pruning (58 fresh and 0 done)

PrunedKeptTotal
New1054201074
Fresh83846
Picked101
Done404
Total1067581125
Error
0.4b
Counts
1125 → 58
Alt Table
Click to see full alt table
StatusErrorProgram
16.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (pow.f64 (pow.f64 (*.f64 1/3 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) 3) 1/3))))
5.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (expm1.f64 (log1p.f64 (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))))))
13.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1)))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (cbrt.f64 (pow.f64 (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)) 3))))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))))
10.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (sin.f64 (-.f64 lambda1 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
18.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
13.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
13.5b
(+.f64 lambda1 (expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))))))
29.5b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (expm1.f64 (log1p.f64 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))))
0.7b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (+.f64 (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1)) 1) 1)))
3.3b
(+.f64 lambda1 (cbrt.f64 (pow.f64 (atan2.f64 (*.f64 (sin.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (fma.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2) (cos.f64 phi1))) 3)))
18.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (+.f64 (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 (+.f64 lambda2 phi1))) lambda1)) (cos.f64 (*.f64 1/2 (+.f64 phi1 lambda2)))) (cos.f64 (*.f64 (-.f64 lambda2 (+.f64 lambda1 phi1)) 1/2))) 2)))
29.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
24.7b
(+.f64 lambda1 (expm1.f64 (log1p.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))))
22.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) 2)))
18.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))))
23.3b
(+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
29.5b
(+.f64 lambda1 (atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (sin.f64 (+.f64 lambda1 phi2))) 2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
28.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
29.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
24.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
31.5b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (cbrt.f64 (exp.f64 (*.f64 3 (log.f64 (sin.f64 (-.f64 lambda1 lambda2))))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
24.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
23.1b
(+.f64 lambda1 (atan2.f64 (log1p.f64 (expm1.f64 (*.f64 (cos.f64 phi2) (fma.f64 (cos.f64 lambda1) (neg.f64 lambda2) (sin.f64 lambda1))))) (+.f64 1 (+.f64 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)) (*.f64 -1/2 (pow.f64 phi1 2))))))
0.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (*.f64 1/3 (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (neg.f64 lambda2))))))))
20.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (exp.f64 (log1p.f64 (cos.f64 (-.f64 lambda1 lambda2))))))
27.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
25.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) 1)))
25.5b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (+.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))))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
31.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (pow.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3) 1/3)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
10.3b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (log.f64 (exp.f64 (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
18.6b
(+.f64 lambda1 (log.f64 (exp.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))))
22.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
14.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (+.f64 (+.f64 1 (cos.f64 phi1)) (cos.f64 (-.f64 lambda2 lambda1))) 1)))
25.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (fabs.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
13.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (*.f64 1/3 (cos.f64 phi2)) 1/3))))
20.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) 2)))
14.2b
(+.f64 lambda1 (pow.f64 (cbrt.f64 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))) 3))
20.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (+.f64 (cos.f64 (*.f64 1/2 lambda2)) (*.f64 1/2 (*.f64 (sin.f64 (*.f64 1/2 lambda2)) lambda1))) 2) 2)))
22.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
13.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))))
29.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
0.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
20.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
29.5b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda1) 1)))
27.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (+.f64 (cos.f64 lambda1) 1)))
20.2b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))) 1)))
14.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sqrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
10.0b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
14.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
0.8b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 1/3 (*.f64 3 (fma.f64 (cos.f64 lambda2) (cos.f64 phi2) (cos.f64 phi1))))))
13.6b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 1/3 (*.f64 (*.f64 -1/6 phi2) phi2)))))))
3.4b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (cbrt.f64 (pow.f64 (sin.f64 (-.f64 lambda1 lambda2)) 3))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
13.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
0.9b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (pow.f64 (cbrt.f64 (sin.f64 (-.f64 lambda1 lambda2))) 3)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
19.1b
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 lambda2 lambda1) phi1) 1/2)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) 2)))
29.5b
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
Compiler

Compiled 1431 to 970 computations (32.2% saved)

regimes400.0ms (2%)

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

7 calls:

54.0ms
lambda1
51.0ms
lambda2
51.0ms
phi1
49.0ms
phi2
47.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Results
ErrorSegmentsBranch
0.6b1lambda1
0.6b1lambda2
0.6b1phi1
0.6b1phi2
0.6b1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
0.6b1(cos.f64 phi2)
0.6b1(cos.f64 phi1)
Compiler

Compiled 2412 to 740 computations (69.3% saved)

regimes226.0ms (1.1%)

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

7 calls:

31.0ms
phi1
29.0ms
phi2
29.0ms
lambda2
28.0ms
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
27.0ms
(cos.f64 phi1)
Results
ErrorSegmentsBranch
0.6b1lambda1
0.6b1lambda2
0.6b1phi1
0.6b1phi2
0.6b1(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
0.6b1(cos.f64 phi2)
0.6b1(cos.f64 phi1)
Compiler

Compiled 1270 to 449 computations (64.6% saved)

regimes497.0ms (2.5%)

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

6 calls:

217.0ms
phi1
153.0ms
phi2
32.0ms
(cos.f64 phi2)
24.0ms
lambda1
24.0ms
lambda2
Results
ErrorSegmentsBranch
0.8b1lambda1
0.8b1lambda2
0.8b1phi1
0.8b1phi2
0.8b1(cos.f64 phi2)
0.8b1(cos.f64 phi1)
Compiler

Compiled 950 to 346 computations (63.6% saved)

regimes403.0ms (2%)

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

6 calls:

75.0ms
(cos.f64 phi1)
73.0ms
lambda2
72.0ms
lambda1
65.0ms
phi2
59.0ms
phi1
Results
ErrorSegmentsBranch
12.0b2lambda1
7.0b3lambda2
6.3b3phi1
6.0b3phi2
7.8b2(cos.f64 phi2)
5.5b4(cos.f64 phi1)
Compiler

Compiled 873 to 327 computations (62.5% saved)

bsearch2.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999373230966
0.9999999997746487
0.0ms
0.9979102661855331
0.9983409472093165
0.0ms
0.9705010947084453
0.9775361075365808
Compiler

Compiled 31 to 20 computations (35.5% saved)

regimes361.0ms (1.8%)

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

6 calls:

65.0ms
phi1
65.0ms
(cos.f64 phi1)
62.0ms
phi2
59.0ms
lambda2
38.0ms
lambda1
Results
ErrorSegmentsBranch
12.0b2lambda1
7.0b3lambda2
6.3b3phi1
6.0b3phi2
7.8b2(cos.f64 phi2)
5.5b4(cos.f64 phi1)
Compiler

Compiled 837 to 321 computations (61.6% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999373230966
0.9999999997746487
0.0ms
0.9979102661855331
0.9983409472093165
0.0ms
0.9705010947084453
0.9775361075365808
Compiler

Compiled 31 to 20 computations (35.5% saved)

regimes280.0ms (1.4%)

Counts
37 → 4
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (sin.f64 (+.f64 lambda1 phi2))) 2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (fabs.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) 2)))
(+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) 2)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (+.f64 (+.f64 1 (cos.f64 phi1)) (cos.f64 (-.f64 lambda2 lambda1))) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) 2)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (*.f64 (+.f64 (-.f64 lambda2 lambda1) phi1) 1/2)) (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1)))) 2)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 lambda1 (*.f64 lambda1 (*.f64 (*.f64 lambda1 lambda2) 1/2))) lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
Calls

6 calls:

52.0ms
(cos.f64 phi1)
52.0ms
phi2
48.0ms
phi1
46.0ms
lambda2
33.0ms
lambda1
Results
ErrorSegmentsBranch
12.0b2lambda1
7.0b3lambda2
6.3b3phi1
6.0b3phi2
7.8b2(cos.f64 phi2)
5.5b4(cos.f64 phi1)
Compiler

Compiled 712 to 271 computations (61.9% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9999999373230966
0.9999999997746487
0.0ms
0.9979102661855331
0.9983409472093165
0.0ms
0.9705010947084453
0.9775361075365808
Compiler

Compiled 31 to 20 computations (35.5% saved)

regimes253.0ms (1.3%)

Counts
34 → 3
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (sin.f64 (+.f64 lambda1 phi2))) 2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (fabs.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) 2)))
(+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 (-.f64 lambda2 lambda1))) 2) 2)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (*.f64 1/3 (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 phi1 (*.f64 phi1 -1/2) 1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (-.f64 (+.f64 (+.f64 1 (cos.f64 phi1)) (cos.f64 (-.f64 lambda2 lambda1))) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) (fma.f64 -1/2 (*.f64 phi1 phi1) 1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (*.f64 1/3 (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (cos.f64 (neg.f64 lambda2)) (*.f64 -1 (*.f64 (sin.f64 (neg.f64 lambda2)) lambda1))) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (*.f64 (cos.f64 (*.f64 1/2 (-.f64 phi1 lambda1))) (cos.f64 (*.f64 -1/2 (+.f64 phi1 lambda1)))) 2)))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2)))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Calls

6 calls:

53.0ms
lambda1
47.0ms
phi2
45.0ms
phi1
42.0ms
lambda2
25.0ms
(cos.f64 phi1)
Results
ErrorSegmentsBranch
12.6b2lambda1
7.0b3lambda2
6.6b3phi1
6.0b3phi2
7.8b2(cos.f64 phi2)
7.8b2(cos.f64 phi1)
Compiler

Compiled 633 to 241 computations (61.9% saved)

bsearch265.0ms (1.3%)

Algorithm
binary-search
Steps
TimeLeftRight
131.0ms
1.5270653144426372e-31
9.24227571122915e-24
133.0ms
-3.27540391935035e+25
-1.4966505466666219e+22
Compiler

Compiled 31 to 20 computations (35.5% saved)

regimes136.0ms (0.7%)

Counts
25 → 3
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (sin.f64 (+.f64 lambda1 phi2))) 2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (fabs.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) 2)))
(+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
Calls

6 calls:

34.0ms
lambda2
24.0ms
phi2
22.0ms
phi1
19.0ms
(cos.f64 phi2)
13.0ms
lambda1
Results
ErrorSegmentsBranch
13.9b1lambda1
7.7b3lambda2
12.4b2phi1
9.4b2phi2
8.6b2(cos.f64 phi2)
13.9b1(cos.f64 phi1)
Compiler

Compiled 439 to 168 computations (61.7% saved)

bsearch281.0ms (1.4%)

Algorithm
binary-search
Steps
TimeLeftRight
136.0ms
1.7318676765857114e-26
6.282421350214703e-19
144.0ms
-1609.7101958582068
-104.41404160389017
Compiler

Compiled 31 to 20 computations (35.5% saved)

regimes125.0ms (0.6%)

Counts
24 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (sin.f64 (+.f64 lambda1 phi2))) 2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (fabs.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) 2)))
(+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (*.f64 (cos.f64 lambda2) lambda1) (sin.f64 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (+.f64 (*.f64 lambda2 (sin.f64 lambda1)) (cos.f64 lambda1)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
Calls

6 calls:

33.0ms
lambda2
24.0ms
phi2
18.0ms
(cos.f64 phi2)
13.0ms
phi1
12.0ms
(cos.f64 phi1)
Results
ErrorSegmentsBranch
13.9b1lambda1
12.9b3lambda2
13.9b1phi1
12.4b2phi2
11.8b2(cos.f64 phi2)
13.9b1(cos.f64 phi1)
Compiler

Compiled 420 to 165 computations (60.7% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9415920784551289
0.9437885486779757
Compiler

Compiled 30 to 20 computations (33.3% saved)

regimes75.0ms (0.4%)

Counts
20 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (sin.f64 (+.f64 lambda1 phi2))) 2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (fabs.f64 (sin.f64 (-.f64 lambda1 lambda2)))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 (pow.f64 (cos.f64 (*.f64 1/2 lambda2)) 2) 2)))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))
Calls

6 calls:

16.0ms
(cos.f64 phi2)
11.0ms
phi2
10.0ms
lambda2
10.0ms
phi1
10.0ms
lambda1
Results
ErrorSegmentsBranch
13.9b1lambda1
13.9b1lambda2
13.9b1phi1
13.9b1phi2
12.7b2(cos.f64 phi2)
13.9b1(cos.f64 phi1)
Compiler

Compiled 345 to 141 computations (59.1% saved)

bsearch1.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.41364671232852845
-0.375592103802853
Compiler

Compiled 30 to 20 computations (33.3% saved)

regimes95.0ms (0.5%)

Counts
13 → 4
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (sin.f64 (+.f64 lambda1 phi2))) 2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1))))
Calls

6 calls:

28.0ms
phi1
20.0ms
lambda2
13.0ms
(cos.f64 phi1)
12.0ms
(cos.f64 phi2)
8.0ms
lambda1
Results
ErrorSegmentsBranch
20.1b1lambda1
18.1b3lambda2
17.3b4phi1
20.1b1phi2
18.9b2(cos.f64 phi2)
18.2b2(cos.f64 phi1)
Compiler

Compiled 233 to 113 computations (51.5% saved)

bsearch555.0ms (2.8%)

Algorithm
binary-search
Steps
TimeLeftRight
227.0ms
8.683789910135712e+264
6.745746567040984e+267
176.0ms
1.120587532435519e+66
2.777558374937811e+69
152.0ms
-8.460145553896191e-13
-3.411091810444528e-19
Compiler

Compiled 31 to 20 computations (35.5% saved)

regimes114.0ms (0.6%)

Counts
12 → 2
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (sin.f64 lambda1) (fma.f64 -1/2 (*.f64 phi2 phi2) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (/.f64 (+.f64 (sin.f64 (-.f64 lambda1 phi2)) (sin.f64 (+.f64 lambda1 phi2))) 2) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (+.f64 1 (sin.f64 (-.f64 lambda1 lambda2))) 1)) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
Calls

5 calls:

48.0ms
(cos.f64 phi2)
23.0ms
lambda2
22.0ms
phi1
8.0ms
phi2
7.0ms
lambda1
Results
ErrorSegmentsBranch
20.1b1lambda1
19.1b3lambda2
19.0b3phi1
20.1b1phi2
18.9b2(cos.f64 phi2)
Compiler

Compiled 212 to 104 computations (50.9% saved)

bsearch0.0ms (0%)

Algorithm
left-value
Steps
TimeLeftRight
0.0ms
-0.41364671232852845
-0.375592103802853
Compiler

Compiled 30 to 20 computations (33.3% saved)

regimes33.0ms (0.2%)

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

5 calls:

7.0ms
lambda2
6.0ms
(cos.f64 phi2)
6.0ms
lambda1
6.0ms
phi1
5.0ms
phi2
Results
ErrorSegmentsBranch
20.1b1lambda1
20.1b1lambda2
20.1b1phi1
20.1b1phi2
20.1b1(cos.f64 phi2)
Compiler

Compiled 136 to 67 computations (50.7% saved)

regimes29.0ms (0.1%)

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

5 calls:

5.0ms
(cos.f64 phi2)
5.0ms
phi1
5.0ms
phi2
5.0ms
lambda2
5.0ms
lambda1
Results
ErrorSegmentsBranch
24.6b1lambda1
24.6b1lambda2
24.6b1phi1
24.6b1phi2
24.6b1(cos.f64 phi2)
Compiler

Compiled 106 to 59 computations (44.3% saved)

regimes61.0ms (0.3%)

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

5 calls:

43.0ms
lambda1
4.0ms
phi2
4.0ms
phi1
4.0ms
lambda2
3.0ms
(cos.f64 phi2)
Results
ErrorSegmentsBranch
29.4b1lambda1
29.4b1lambda2
29.4b1phi1
29.4b1phi2
29.4b1(cos.f64 phi2)
Compiler

Compiled 78 to 49 computations (37.2% saved)

regimes19.0ms (0.1%)

Accuracy

Total -0.1b remaining (-0.3%)

Threshold costs -0.1b (-0.3%)

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

5 calls:

3.0ms
phi2
3.0ms
lambda2
3.0ms
phi1
3.0ms
lambda1
3.0ms
(cos.f64 phi2)
Results
ErrorSegmentsBranch
29.5b1lambda1
29.5b1lambda2
29.5b1phi1
29.5b1phi2
29.5b1(cos.f64 phi2)
Compiler

Compiled 54 to 38 computations (29.6% saved)

simplify155.0ms (0.8%)

Algorithm
egg-herbie
Rules
40×+-commutative_binary64
24×*-commutative_binary64
sub-neg_binary64
neg-sub0_binary64
neg-mul-1_binary64
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01361142
11991142
22201142
32321142
42381142
52391142
Stop Event
fuel
saturated
Calls
Call 1
Inputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(if (<=.f64 (cos.f64 phi1) 8782019273372467/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 (cos.f64 phi1) 4494592428115755/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (cos.f64 phi1) 9007198804381029/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 1/3 (*.f64 (*.f64 -1/6 phi2) phi2))))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1))))))
(if (<=.f64 (cos.f64 phi1) 8782019273372467/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 (cos.f64 phi1) 4494592428115755/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (cos.f64 phi1) 9007198804381029/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 1/3 (*.f64 (*.f64 -1/6 phi2) phi2))))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))))
(if (<=.f64 (cos.f64 phi1) 8782019273372467/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 (cos.f64 phi1) 4494592428115755/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (cos.f64 phi1) 9007198804381029/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))))
(if (<=.f64 phi2 -32754039193503500943228928) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))) (if (<=.f64 phi2 435900089329911/2854495385411919762116571938898990272765493248) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -7079580310782723/4398046511104) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 lambda2 6034678089548311/348449143727040986586495598010130648530944) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))))
(if (<=.f64 (cos.f64 phi2) 4242390848983007/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(if (<=.f64 (cos.f64 phi2) -3602879701896397/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2)))))
(if (<=.f64 phi1 -8378522335480229/9903520314283042199192993792) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1)))) (if (<=.f64 phi1 1120587532435519065346413509583709945480258074229185683399423033344) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1))) (if (<=.f64 phi1 8683789910135712081900573726874273580973748594238158487069196125769065196938558145634577266389681497204640259717472057773495662660088185265483910166064908685101079957040006914327990088131966296456832704298384363196231620904708856909470552340240639080104983586144256) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1)))))))
(if (<=.f64 (cos.f64 phi2) -3602879701896397/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
Outputs
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 lambda2)))))
(if (<=.f64 (cos.f64 phi1) 8782019273372467/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 (cos.f64 phi1) 4494592428115755/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (cos.f64 phi1) 9007198804381029/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 1/3 (*.f64 (*.f64 -1/6 phi2) phi2))))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1))))))
(if (<=.f64 (cos.f64 phi1) 8782019273372467/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 (cos.f64 phi1) 4494592428115755/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (cos.f64 phi1) 9007198804381029/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (+.f64 (*.f64 (cos.f64 phi1) 1/3) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 1/3 (*.f64 phi2 (*.f64 phi2 -1/6)))))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (fma.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi2) 1))))))
(if (<=.f64 (cos.f64 phi1) 8782019273372467/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 (cos.f64 phi1) 4494592428115755/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (cos.f64 phi1) 9007198804381029/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (+.f64 (*.f64 1/3 (cos.f64 phi1)) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 1/3 (*.f64 (*.f64 -1/6 phi2) phi2))))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))))
(if (<=.f64 (cos.f64 phi1) 8782019273372467/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 (cos.f64 phi1) 4494592428115755/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (cos.f64 phi1) 9007198804381029/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (*.f64 3 (+.f64 (*.f64 (cos.f64 phi1) 1/3) (*.f64 (cos.f64 (-.f64 lambda2 lambda1)) (+.f64 1/3 (*.f64 phi2 (*.f64 phi2 -1/6)))))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1))))))
(if (<=.f64 (cos.f64 phi1) 8782019273372467/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 (cos.f64 phi1) 4494592428115755/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (cos.f64 phi1) 9007198804381029/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))))))
(if (<=.f64 (cos.f64 phi1) 8782019273372467/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (*.f64 (+.f64 (*.f64 phi2 (*.f64 phi2 -1/2)) 1) (cos.f64 (-.f64 lambda2 lambda1)))))) (if (<=.f64 (cos.f64 phi1) 4494592428115755/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (if (<=.f64 (cos.f64 phi1) 9007198804381029/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1))))))
(if (<=.f64 phi2 -32754039193503500943228928) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (*.f64 (cos.f64 (-.f64 lambda1 lambda2)) (cos.f64 phi2))))) (if (<=.f64 phi2 435900089329911/2854495385411919762116571938898990272765493248) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 phi2 -32754039193503500943228928) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))) 1))) (if (<=.f64 phi2 435900089329911/2854495385411919762116571938898990272765493248) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2))))))))
(if (<=.f64 lambda2 -7079580310782723/4398046511104) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2)))) (if (<=.f64 lambda2 6034678089548311/348449143727040986586495598010130648530944) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 lambda1 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2))))))
(if (<=.f64 (cos.f64 phi2) 4242390848983007/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda2 lambda1)) (cos.f64 phi1)))))
(if (<=.f64 (cos.f64 phi2) 4242390848983007/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 lambda2 (neg.f64 (cos.f64 phi2))) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(if (<=.f64 (cos.f64 phi2) 4242390848983007/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (neg.f64 lambda2) (cos.f64 phi2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(if (<=.f64 (cos.f64 phi2) 4242390848983007/4503599627370496) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (neg.f64 lambda2)) (+.f64 (cos.f64 phi1) (*.f64 (cos.f64 phi2) (cos.f64 (-.f64 lambda1 lambda2)))))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 (-.f64 lambda2 lambda1))))))
(if (<=.f64 (cos.f64 phi2) -3602879701896397/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda2)))))
(if (<=.f64 phi1 -8378522335480229/9903520314283042199192993792) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1)))) (if (<=.f64 phi1 1120587532435519065346413509583709945480258074229185683399423033344) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1))) (if (<=.f64 phi1 8683789910135712081900573726874273580973748594238158487069196125769065196938558145634577266389681497204640259717472057773495662660088185265483910166064908685101079957040006914327990088131966296456832704298384363196231620904708856909470552340240639080104983586144256) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 phi1) (cos.f64 lambda1)))))))
(if (<=.f64 (cos.f64 phi2) -3602879701896397/9007199254740992) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (-.f64 (sin.f64 lambda1) (*.f64 lambda2 (cos.f64 lambda1)))) (*.f64 -1/2 (*.f64 phi1 phi1)))) (+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 (cos.f64 lambda1) 1)))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 (-.f64 lambda1 lambda2))) (+.f64 1 (cos.f64 lambda1))))
(+.f64 lambda1 (atan2.f64 (*.f64 (cos.f64 phi2) (sin.f64 lambda1)) (+.f64 (cos.f64 lambda2) 1)))
(+.f64 lambda1 (atan2.f64 (sin.f64 lambda1) (+.f64 (cos.f64 (-.f64 lambda1 lambda2)) 1)))
Compiler

Compiled 789 to 404 computations (48.8% saved)

soundness74.0ms (0.4%)

Algorithm
egg-herbie
Rules
284×fma-def_binary64
141×fma-neg_binary64
42×distribute-rgt-in_binary64
39×cancel-sign-sub-inv_binary64
36×sub-neg_binary64
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
01532
12130
22830
33530
44530
57130
611530
716930
824430
933130
1045830
1160430
1265030
1375430
1485030
1587230
1690730
1795130
1899430
19101530
20101730
Stop Event
saturated
Compiler

Compiled 71 to 41 computations (42.3% saved)

end214.0ms (1.1%)

Compiler

Compiled 729 to 209 computations (71.3% saved)

Profiling

Loading profile data...