Toniolo and Linder, Equation (3b), real

Time bar (total: 14.4s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze256.0ms (1.8%)

Memory
27.7MiB live, 334.4MiB allocated
Algorithm
search
Search
ProbabilityValidUnknownPreconditionInfiniteDomainCan'tIter
0%0%99.9%0.1%0%0%0%0
0%0%99.9%0.1%0%0%0%1
0%0%99.9%0.1%0%0%0%2
0%0%99.9%0.1%0%0%0%3
0%0%99.9%0.1%0%0%0%4
25%25%74.9%0.1%0%0%0%5
43.8%43.7%56.2%0.1%0%0%0%6
43.8%43.7%56.2%0.1%0%0%0%7
53.1%53%46.8%0.1%0%0%0%8
60.9%60.8%39%0.1%0%0%0%9
60.9%60.8%39%0.1%0%0%0%10
64.8%64.7%35.1%0.1%0%0%0%11
68.4%68.3%31.6%0.1%0%0%0%12
Compiler

Compiled 18 to 14 computations (22.2% saved)

sample1.9s (12.9%)

Memory
74.5MiB live, 2 478.9MiB allocated
Samples
1.4s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.1s
ival-sin: 654.0ms (57.2% of total)
ival-pow2: 236.0ms (20.7% of total)
ival-mult: 87.0ms (7.6% of total)
ival-sqrt: 61.0ms (5.3% of total)
ival-div: 54.0ms (4.7% of total)
ival-add: 41.0ms (3.6% of total)
ival-true: 7.0ms (0.6% of total)
ival-assert: 4.0ms (0.4% of total)
Bogosity

explain264.0ms (1.8%)

Memory
50.8MiB live, 362.3MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
140-0-(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
00-0-(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
00-0-(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
00-0-(sin.f64 kx)
00-0-(sin.f64 th)
00-0-(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
00-0-(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
00-0-th
00-0-#s(literal 2 binary64)
00-0-(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
00-0-(sin.f64 ky)
00-0-ky
00-0-kx
Explanations
Click to see full explanations table
OperatorSubexpressionExplanationCount
sqrt.f64(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))uflow-rescue140
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))underflow65
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))underflow54
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))underflow14
Confusion
Predicted +Predicted -
+140
-0242
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+1400
-00242
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0242
114
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
141.0ms512×0valid
Compiler

Compiled 152 to 43 computations (71.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 121.0ms
ival-sin: 91.0ms (75.4% of total)
ival-pow2: 10.0ms (8.3% of total)
ival-div: 9.0ms (7.5% of total)
ival-sqrt: 4.0ms (3.3% of total)
ival-mult: 3.0ms (2.5% of total)
ival-add: 2.0ms (1.7% of total)
ival-true: 1.0ms (0.8% of total)
ival-assert: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess272.0ms (1.9%)

Memory
-23.2MiB live, 228.7MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045153
189147
2211147
3416147
4898147
52624147
65843147
01316
02216
13016
24816
310316
420516
544616
6115816
7293016
8699416
0807211
Stop Event
iter limit
node limit
iter limit
node limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Symmetry

(abs kx)

(negabs th)

(negabs ky)

Compiler

Compiled 16 to 13 computations (18.8% saved)

eval0.0ms (0%)

Memory
0.2MiB live, 0.2MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
94.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify144.0ms (1%)

Memory
11.6MiB live, 203.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
cost-diff5
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01366
02266
13066
24866
310366
420566
544666
6115866
7293066
8699466
0807251
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 th)
th
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 th)
th

localize114.0ms (0.8%)

Memory
-19.1MiB live, 107.9MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.16015625
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
accuracy0.21484375
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy0.2734375
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy3.368806192132544
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Samples
59.0ms256×0valid
Compiler

Compiled 68 to 15 computations (77.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 49.0ms
ival-pow2: 24.0ms (49.3% of total)
ival-sin: 18.0ms (37% of total)
ival-div: 2.0ms (4.1% of total)
ival-mult: 2.0ms (4.1% of total)
ival-sqrt: 2.0ms (4.1% of total)
ival-add: 1.0ms (2.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series37.0ms (0.3%)

Memory
28.2MiB live, 85.5MiB allocated
Counts
6 → 45
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(pow (sin kx) 2)
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
Calls

9 calls:

TimeVariablePointExpression
12.0ms
ky
@0
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
5.0ms
th
@-inf
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
4.0ms
kx
@inf
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
3.0ms
kx
@0
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))
3.0ms
ky
@inf
((sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin ky) (pow (sin ky) 2) (pow (sin kx) 2))

simplify254.0ms (1.8%)

Memory
21.5MiB live, 272.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03171402
111341336
252361308
084061228
Stop Event
iter limit
node limit
Counts
45 → 44
Calls
Call 1
Inputs
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(pow (sin kx) 2)
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
Outputs
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 kx kx) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (*.f64 kx kx) (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (*.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) (sin.f64 th)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) (*.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) kx) kx) #s(literal 1/3 binary64)) (*.f64 kx kx))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin kx)
(sin.f64 kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 #s(literal 1/120 binary64) (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 (fma.f64 #s(literal -1/5040 binary64) (sin.f64 th) (/.f64 (*.f64 #s(literal -1/240 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (/.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 th) (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (neg.f64 (pow.f64 ky #s(literal 3 binary64))) (/.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/6 binary64)) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (fma.f64 (+.f64 (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (fma.f64 (+.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))) (sin.f64 kx) (-.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal -1/6 binary64) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal 1/120 binary64) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal -1/6 binary64) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 (*.f64 (*.f64 (sin.f64 ky) th) th) #s(literal -1/5040 binary64)))))) th)

rewrite587.0ms (4.1%)

Memory
-59.0MiB live, 351.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
02249
15949
231949
3312949
0893734
Stop Event
iter limit
node limit
iter limit
Counts
6 → 384
Calls
Call 1
Inputs
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/8 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/8 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) #s(literal 1/2 binary64)) (pow.f64 (+.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (+.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 12 binary64)))) #s(literal 1/2 binary64)) (pow.f64 (fma.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (-.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (+.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1/2 binary64)) (pow.f64 (+.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (pow.f64 (/.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (pow.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (fma.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (sin.f64 ky))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 ky) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (sin.f64 ky) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(hypot.f64 (sin.f64 ky) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (sin.f64 ky) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(hypot.f64 (sin.f64 kx) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (sin.f64 kx) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(hypot.f64 (sin.f64 kx) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(exp.f64 (*.f64 (log.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) #s(literal 1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(+.f64 (cosh.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sinh.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(neg.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(neg.f64 (*.f64 (sin.f64 th) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(+.f64 (cosh.f64 (-.f64 (log.f64 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))) (sinh.f64 (-.f64 (log.f64 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) (fabs.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (pow.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sin.f64 ky)))
(fma.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64) (*.f64 (cos.f64 ky) #s(literal 0 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64) (*.f64 (cos.f64 (+.f64 (PI.f64) ky)) #s(literal 0 binary64)))
(sin.f64 (neg.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(sin.f64 (acos.f64 (cos.f64 ky)))
(sin.f64 (neg.f64 (neg.f64 ky)))
(sin.f64 (neg.f64 (+.f64 (PI.f64) ky)))
(sin.f64 (+.f64 (neg.f64 ky) (PI.f64)))
(sin.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(-.f64 (*.f64 (cos.f64 ky) #s(literal 0 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(-.f64 (*.f64 (cos.f64 (+.f64 (PI.f64) ky)) #s(literal 0 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(-.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (cos.f64 ky) #s(literal 0 binary64)))
(fabs.f64 (neg.f64 (sin.f64 ky)))
(fabs.f64 (sin.f64 ky))
(cos.f64 (neg.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))
(cos.f64 (neg.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (neg.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))
(cos.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (PI.f64)))
(cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (asin.f64 (cos.f64 ky)))
(cos.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))
(cos.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))
(cos.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(+.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (cos.f64 ky) #s(literal 0 binary64)))
(+.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 (cos.f64 (+.f64 (PI.f64) ky)) #s(literal 0 binary64)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 ky))) (sinh.f64 (log.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 ky))
(*.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky)))))
(*.f64 (*.f64 (sin.f64 ky) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (sin.f64 ky) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 4 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (sin.f64 (+.f64 (neg.f64 ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (PI.f64) ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (sin.f64 (+.f64 (+.f64 (PI.f64) ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 ky (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (sin.f64 (+.f64 ky (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 ky (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 ky (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 ky (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 ky (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 ky))) (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (PI.f64) ky))) (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (PI.f64) ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 ky) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (neg.f64 ky) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (PI.f64) ky) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 (PI.f64) ky) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) ky)) (cos.f64 (+.f64 (neg.f64 (neg.f64 ky)) ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 (+.f64 (PI.f64) ky)) ky)) (cos.f64 (+.f64 (neg.f64 (+.f64 (PI.f64) ky)) ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) ky)) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) ky)) (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (PI.f64)) ky))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky (neg.f64 (neg.f64 ky)))) (cos.f64 (+.f64 ky (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky (neg.f64 (+.f64 (PI.f64) ky)))) (cos.f64 (+.f64 ky (neg.f64 (+.f64 (PI.f64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (+.f64 ky (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky (+.f64 (+.f64 (PI.f64) ky) (PI.f64)))) (cos.f64 (+.f64 ky (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (cos.f64 (-.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (cos.f64 (-.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (cos.f64 (-.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 ky) (cos.f64 ky)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (-.f64 (*.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #s(literal -2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (PI.f64) ky) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (+.f64 (+.f64 (PI.f64) ky) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 ky) (+.f64 (PI.f64) ky))) (cos.f64 (+.f64 (neg.f64 ky) (+.f64 (PI.f64) ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (PI.f64) ky) (neg.f64 ky))) (cos.f64 (+.f64 (+.f64 (PI.f64) ky) (neg.f64 ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 (PI.f64) ky) (+.f64 (PI.f64) ky))) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (PI.f64) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (+.f64 (neg.f64 ky) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (log.f64 (sin.f64 ky))) (cosh.f64 (log.f64 (sin.f64 ky)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))) (sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(-.f64 #s(literal 1 binary64) (*.f64 (sin.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))) (sin.f64 (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))))
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (neg.f64 ky))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (+.f64 (PI.f64) ky))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (neg.f64 ky) (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 (PI.f64) ky) (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (PI.f64) ky)))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 4 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 2 binary64))) (log.f64 (sin.f64 ky))))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))))
(+.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 (PI.f64) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))))
(*.f64 (pow.f64 (*.f64 (sin.f64 kx) (sqrt.f64 (sin.f64 kx))) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 kx))
(*.f64 (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (pow.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(*.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))) (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 kx) (sqrt.f64 (sin.f64 kx))) (sqrt.f64 (sin.f64 kx)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (*.f64 (sqrt.f64 (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (*.f64 (sqrt.f64 (sin.f64 kx)) (sin.f64 kx)))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 4 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 kx) (neg.f64 kx))) (cos.f64 (+.f64 (neg.f64 kx) (neg.f64 kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 kx) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (neg.f64 kx) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (neg.f64 kx))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (neg.f64 kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 kx) (cos.f64 kx)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (pow.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 3 binary64)) (pow.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 3 binary64))) (fma.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (-.f64 (*.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (exp.f64 (neg.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sinh.f64 (log.f64 (sin.f64 kx))) (cosh.f64 (log.f64 (sin.f64 kx)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 kx) (cos.f64 kx)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 kx)))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 2 binary64))) (log.f64 (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 4 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64))) (sinh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64))))
(+.f64 (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))

eval160.0ms (1.1%)

Memory
2.7MiB live, 190.6MiB allocated
Compiler

Compiled 12 601 to 2 762 computations (78.1% saved)

prune68.0ms (0.5%)

Memory
-15.8MiB live, 46.1MiB allocated
Pruning

21 alts after pruning (21 fresh and 0 done)

PrunedKeptTotal
New46221483
Fresh000
Picked101
Done000
Total46321484
Accuracy
100.0%
Counts
484 → 21
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
93.8%
(*.f64 (/.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (sin.f64 th))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
76.3%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
23.2%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (sin.f64 th))
83.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
84.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)))))) (sin.f64 th))
44.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
86.0%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 kx) (cos.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
86.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
52.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
36.3%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
31.4%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
39.5%
(*.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
76.0%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
25.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
41.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
92.6%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky))))
32.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 920 to 682 computations (25.9% saved)

simplify147.0ms (1%)

Memory
19.0MiB live, 149.9MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
cost-diff0
(sin.f64 ky)
cost-diff0
(sqrt.f64 (sin.f64 ky))
cost-diff5
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
cost-diff1
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
cost-diff0
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
cost-diff0
(sin.f64 th)
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
cost-diff0
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041295
071285
1119285
2256285
3587285
41290285
52900285
66156285
08190280
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
#s(literal 1/2 binary64)
(*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))
(cos.f64 (*.f64 #s(literal 2 binary64) kx))
(*.f64 #s(literal 2 binary64) kx)
#s(literal 2 binary64)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 th)
th
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(sqrt.f64 (sin.f64 ky))
(sin.f64 ky)
ky
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
th
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(sqrt.f64 (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))))
(+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))
(*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))
(cos.f64 (*.f64 #s(literal 2 binary64) kx))
(cos.f64 (*.f64 #s(literal -2 binary64) kx))
(*.f64 #s(literal 2 binary64) kx)
#s(literal 2 binary64)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 th)
th
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(sqrt.f64 (sin.f64 ky))
(sin.f64 ky)
ky
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 th)
th
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx

localize286.0ms (2%)

Memory
5.5MiB live, 385.6MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.0546875
(sqrt.f64 (sin.f64 ky))
accuracy0.18425751953688402
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
accuracy0.1875
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.2421875
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
accuracy0.12109375
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
accuracy0.16015625
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy3.345368692132544
(sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
accuracy10.570417350147578
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
accuracy0.12109375
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
accuracy0.15625
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy3.345368692132544
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy18.00314458267922
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.00390625
(sin.f64 th)
accuracy28.296466903326905
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
accuracy0.00390625
(sin.f64 th)
accuracy0.015625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.09375
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.12109375
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Samples
81.0ms101×0valid
63.0ms34×2valid
46.0ms61×1valid
23.0ms60×0invalid
Compiler

Compiled 323 to 32 computations (90.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 141.0ms
ival-cos: 46.0ms (32.7% of total)
ival-sin: 27.0ms (19.2% of total)
ival-mult: 18.0ms (12.8% of total)
ival-div: 10.0ms (7.1% of total)
adjust: 10.0ms (7.1% of total)
ival-pow2: 8.0ms (5.7% of total)
ival-sqrt: 8.0ms (5.7% of total)
ival-hypot: 6.0ms (4.3% of total)
ival-add: 4.0ms (2.8% of total)
ival-sub: 2.0ms (1.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series75.0ms (0.5%)

Memory
-16.5MiB live, 117.7MiB allocated
Counts
20 → 100
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(sqrt.f64 (sin.f64 ky))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(* (sqrt (/ 1 (sin ky))) (sin th))
(+ (* -1/2 (* (* (pow kx 2) (sin th)) (sqrt (/ 1 (pow (sin ky) 5))))) (* (sqrt (/ 1 (sin ky))) (sin th)))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* 1/2 (* (* (pow kx 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))))) (sqrt (sin ky)))))))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 3))) (+ (* 2/3 (/ 1 (pow (sin ky) 5))) (/ 1 (pow (sin ky) 7))))))) (sqrt (sin ky)))) (* 1/2 (* (sqrt (sin ky)) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(- 1/2 (* 1/2 (cos (* 2 kx))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th))
(pow (sin kx) 2)
(sqrt (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* (* ky (sin th)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4)))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/5040 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))))))))
(* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/5040 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))))))))))
(sqrt ky)
(+ (sqrt ky) (* -1/12 (sqrt (pow ky 5))))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* 1/240 (sqrt (pow ky 3))))))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* (pow ky 2) (+ (* -1/288 (sqrt (/ 1 ky))) (* 1/240 (sqrt (/ 1 ky))))))))
(* (sqrt ky) (/ (sin th) (sin kx)))
(+ (* -1/2 (* (sqrt (pow ky 5)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (sqrt ky) (/ (sin th) (sin kx))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* 1/2 (* (sqrt (pow ky 3)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (pow ky 2) (+ (* -1/8 (* (sqrt (/ 1 ky)) (* (pow (sin kx) 3) (* (sin th) (pow (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) 2))))) (* 1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))
(+ (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))) (* 1/2 (* (pow ky 2) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))
(+ (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* 1/2 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))
(+ (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))) (* (pow ky 2) (+ (* 1/2 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ 1/3 (* 1/4 (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* 1/2 (* (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))
(/ (sin th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(sqrt (sin ky))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(* (* th (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))))
(* th (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
Calls

9 calls:

TimeVariablePointExpression
19.0ms
kx
@-inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (- 1/2 (* (cos (* 2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (pow (sin ky) 2) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))
13.0ms
ky
@-inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (- 1/2 (* (cos (* 2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (pow (sin ky) 2) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))
10.0ms
ky
@0
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (- 1/2 (* (cos (* 2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (pow (sin ky) 2) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))
6.0ms
ky
@inf
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (- 1/2 (* (cos (* 2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (pow (sin ky) 2) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))
6.0ms
th
@0
((* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (- 1/2 (* (cos (* 2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (pow (sin ky) 2) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))

simplify311.0ms (2.2%)

Memory
33.5MiB live, 280.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06664140
124573852
094023690
Stop Event
iter limit
node limit
Counts
100 → 98
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(* (sqrt (/ 1 (sin ky))) (sin th))
(+ (* -1/2 (* (* (pow kx 2) (sin th)) (sqrt (/ 1 (pow (sin ky) 5))))) (* (sqrt (/ 1 (sin ky))) (sin th)))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* 1/2 (* (* (pow kx 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))))) (sqrt (sin ky)))))))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 3))) (+ (* 2/3 (/ 1 (pow (sin ky) 5))) (/ 1 (pow (sin ky) 7))))))) (sqrt (sin ky)))) (* 1/2 (* (sqrt (sin ky)) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5))))))))))))
(/ (sin th) (sin ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(- 1/2 (* 1/2 (cos (* 2 kx))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th))
(pow (sin kx) 2)
(sqrt (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(* (* ky (sin th)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4)))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/5040 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))))))))
(* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/5040 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))))))))))
(sqrt ky)
(+ (sqrt ky) (* -1/12 (sqrt (pow ky 5))))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* 1/240 (sqrt (pow ky 3))))))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* (pow ky 2) (+ (* -1/288 (sqrt (/ 1 ky))) (* 1/240 (sqrt (/ 1 ky))))))))
(* (sqrt ky) (/ (sin th) (sin kx)))
(+ (* -1/2 (* (sqrt (pow ky 5)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (sqrt ky) (/ (sin th) (sin kx))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* 1/2 (* (sqrt (pow ky 3)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (pow ky 2) (+ (* -1/8 (* (sqrt (/ 1 ky)) (* (pow (sin kx) 3) (* (sin th) (pow (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) 2))))) (* 1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))
(+ (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))) (* 1/2 (* (pow ky 2) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))
(+ (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* 1/2 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))
(+ (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))) (* (pow ky 2) (+ (* 1/2 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ 1/3 (* 1/4 (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* 1/2 (* (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))
(/ (sin th) (sin kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(sqrt (sin ky))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(* (* th (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))))
(* th (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (/.f64 (*.f64 kx kx) (sin.f64 ky)) #s(literal 1/2 binary64) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (*.f64 kx kx)) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 ky))) (*.f64 kx kx) (sin.f64 ky))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))
(* (sqrt (/ 1 (sin ky))) (sin th))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))
(+ (* -1/2 (* (* (pow kx 2) (sin th)) (sqrt (/ 1 (pow (sin ky) 5))))) (* (sqrt (/ 1 (sin ky))) (sin th)))
(fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th) (*.f64 (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64)))) (*.f64 (sin.f64 th) #s(literal -1/2 binary64)))))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* 1/2 (* (* (pow kx 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))))) (sqrt (sin ky)))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64)))) (sin.f64 th)) (*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (sin.f64 th)) (*.f64 kx kx))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 3))) (+ (* 2/3 (/ 1 (pow (sin ky) 5))) (/ 1 (pow (sin ky) 7))))))) (sqrt (sin ky)))) (* 1/2 (* (sqrt (sin ky)) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 7 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))) (sin.f64 th)) (*.f64 kx kx)) (sqrt.f64 (sin.f64 ky))) (*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64)))) (*.f64 (sin.f64 th) #s(literal -1/2 binary64)))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
(/ (sin th) (sin ky))
(/.f64 (sin.f64 th) (sin.f64 ky))
(+ (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 3))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* 1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))) (/ (sin th) (sin ky)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(+ (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 3))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))) (/ (sin th) (sin ky)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 ky)))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 (sin.f64 th) (sin.f64 ky)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(- 1/2 (* 1/2 (cos (* 2 kx))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))
(* (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th))
(*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sqrt (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))
(sqrt.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/ (* ky (sin th)) (sin kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/12 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (/.f64 (sin.f64 th) (sin.f64 kx)) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (fma.f64 #s(literal -1/5040 binary64) (/.f64 (sin.f64 th) (sin.f64 kx)) (/.f64 (*.f64 #s(literal -1/240 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(*.f64 (fma.f64 (neg.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) ky))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (-.f64 (*.f64 (+.f64 (fma.f64 (-.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))) (+.f64 (/.f64 #s(literal 1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky)) (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx)))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) ky))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 #s(literal -1/6 binary64) (pow.f64 ky #s(literal 3 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) (*.f64 ky ky)) #s(literal 1/6 binary64)) (pow.f64 ky #s(literal 3 binary64)) ky)
(sin kx)
(sin.f64 kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (/.f64 (*.f64 ky ky) (sin.f64 kx)) #s(literal 1/2 binary64) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (*.f64 ky ky)) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (fma.f64 (/.f64 (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky ky)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) (*.f64 ky ky) (sin.f64 kx))
(* (* ky (sin th)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 th)) #s(literal 1/120 binary64) (fma.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) #s(literal 1/2 binary64)))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4)))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/5040 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 4 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (sin.f64 th)) (*.f64 #s(literal -1/12 binary64) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (sin.f64 th)))) (fma.f64 (*.f64 #s(literal -1/240 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/5040 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (*.f64 (sin.f64 th) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) #s(literal 1/2 binary64))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))
(fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/6 binary64))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal 1/12 binary64) (fma.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (*.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal 1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal 1/120 binary64)))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/6 binary64)))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/5040 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))))))))))
(fma.f64 (fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))) (fma.f64 #s(literal -1/2 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 4 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (*.f64 #s(literal -1/12 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))))) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/240 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/5040 binary64)))) (*.f64 ky ky) (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) #s(literal 1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal 1/12 binary64))))) (*.f64 ky ky) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/6 binary64)))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky))
(sqrt ky)
(sqrt.f64 ky)
(+ (sqrt ky) (* -1/12 (sqrt (pow ky 5))))
(fma.f64 (sqrt.f64 (pow.f64 ky #s(literal 5 binary64))) #s(literal -1/12 binary64) (sqrt.f64 ky))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* 1/240 (sqrt (pow ky 3))))))
(fma.f64 (fma.f64 (sqrt.f64 (pow.f64 ky #s(literal 3 binary64))) #s(literal 1/240 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) #s(literal -1/12 binary64))) (pow.f64 ky #s(literal 3 binary64)) (sqrt.f64 ky))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* (pow ky 2) (+ (* -1/288 (sqrt (/ 1 ky))) (* 1/240 (sqrt (/ 1 ky))))))))
(fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) (*.f64 #s(literal 1/1440 binary64) (*.f64 ky ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) #s(literal -1/12 binary64))) (pow.f64 ky #s(literal 3 binary64)) (sqrt.f64 ky))
(* (sqrt ky) (/ (sin th) (sin kx)))
(*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* -1/2 (* (sqrt (pow ky 5)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (sqrt ky) (/ (sin th) (sin kx))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 (pow.f64 ky #s(literal 5 binary64))) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* 1/2 (* (sqrt (pow ky 3)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (*.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)))) (*.f64 (*.f64 (sqrt.f64 (pow.f64 ky #s(literal 3 binary64))) (sin.f64 kx)) (*.f64 (+.f64 (+.f64 (/.f64 #s(literal 1/120 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 th))))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (pow ky 2) (+ (* -1/8 (* (sqrt (/ 1 ky)) (* (pow (sin kx) 3) (* (sin th) (pow (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) 2))))) (* 1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky))) (*.f64 (*.f64 (pow.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal 2 binary64)) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky))) (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (+.f64 (+.f64 (/.f64 #s(literal 1/120 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky))) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) (*.f64 ky ky)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky))
(sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))
(sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))
(+ (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))) (* 1/2 (* (pow ky 2) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))
(fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(+ (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* 1/2 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal 1/3 binary64)) (*.f64 ky ky)) #s(literal 1/2 binary64))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(+ (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))) (* (pow ky 2) (+ (* 1/2 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ 1/3 (* 1/4 (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* 1/2 (* (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (fma.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 ky ky)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal 1/2 binary64))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(/ (sin th) (sin kx))
(/.f64 (sin.f64 th) (sin.f64 kx))
(+ (* -1/2 (/ (* (pow ky 2) (sin th)) (pow (sin kx) 3))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 ky ky) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))))) (/ (sin th) (sin kx)))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* (pow ky 2) (+ (* -1/2 (* (pow ky 2) (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))) (/ (sin th) (sin kx)))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (sin.f64 kx)) (*.f64 ky ky)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)))) (*.f64 ky ky) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(sqrt (sin ky))
(sqrt.f64 (sin.f64 ky))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 th (*.f64 (sin.f64 ky) th)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 th (*.f64 (sin.f64 ky) th)) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 th (*.f64 (sin.f64 ky) th)) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 th (*.f64 (sin.f64 ky) th))))) (*.f64 (*.f64 th th) (*.f64 th th)))) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 (*.f64 th th) th) th)
(* (* th (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 th (*.f64 (sin.f64 ky) th)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 th (*.f64 (sin.f64 ky) th)) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 th (*.f64 (sin.f64 ky) th)) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 th (*.f64 (sin.f64 ky) th))))) (*.f64 (*.f64 th th) (*.f64 th th)))) th)
(* th (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 (*.f64 th th) (*.f64 th th)))) th)
(* th (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 (*.f64 th th) (*.f64 th th)))) th)

rewrite255.0ms (1.8%)

Memory
-7.4MiB live, 237.7MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041212
071171
1230171
21412171
08439171
Stop Event
iter limit
node limit
iter limit
Counts
20 → 472
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(sqrt.f64 (sin.f64 ky))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th)) (sqrt.f64 (sin.f64 ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(sqrt.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (neg.f64 (sqrt.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (sqrt.f64 (sin.f64 ky)))))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (neg.f64 (sin.f64 ky))))
(fabs.f64 (neg.f64 (sin.f64 ky)))
(fabs.f64 (sin.f64 ky))
(exp.f64 (fma.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64) (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64))))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 ky))) (sinh.f64 (log.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal 2 binary64) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) (sqrt.f64 (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 2 binary64) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) (sqrt.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (sin.f64 kx) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (sin.f64 ky) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(sin.f64 th)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(sqrt.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(*.f64 (fabs.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(*.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (pow.f64 (cos.f64 kx) #s(literal 4 binary64)))
(/.f64 (-.f64 (*.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (pow.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (fabs.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64)))))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))) (fabs.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (fabs.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (fabs.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 kx) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (neg.f64 kx) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (neg.f64 kx))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (neg.f64 kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/2 binary64) (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64))
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64)))) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(fabs.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(fabs.f64 (-.f64 (/.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (neg.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64)))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(+.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64)))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th)) (sqrt.f64 (sin.f64 ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(sqrt.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th)) (sqrt.f64 (sin.f64 ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (sqrt.f64 (sin.f64 ky)))) (sqrt.f64 (neg.f64 (sqrt.f64 (sin.f64 ky)))))
(*.f64 (sqrt.f64 (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))
(sqrt.f64 (sin.f64 ky))
(fabs.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))))
(fabs.f64 (sqrt.f64 (sin.f64 ky)))
(exp.f64 (/.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(*.f64 (fabs.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(*.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (pow.f64 (cos.f64 kx) #s(literal 4 binary64)))
(/.f64 (-.f64 (*.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (pow.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (fabs.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64)))))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))) (fabs.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (fabs.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (fabs.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 kx) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (neg.f64 kx) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (neg.f64 kx))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (neg.f64 kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/2 binary64) (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64))
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64)))) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(fabs.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(fabs.f64 (-.f64 (/.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (neg.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64)))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(+.f64 (*.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64)))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal 2 binary64) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) (sqrt.f64 (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 2 binary64) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) (sqrt.f64 (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (sin.f64 kx) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (sin.f64 ky) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 4 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (fabs.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (fabs.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 ky (PI.f64)) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 ky (PI.f64)) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 ky) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 ky) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 ky (PI.f64)) (+.f64 ky (PI.f64)))) (cos.f64 (+.f64 (+.f64 ky (PI.f64)) (+.f64 ky (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 ky (PI.f64)) (neg.f64 ky))) (cos.f64 (+.f64 (+.f64 ky (PI.f64)) (neg.f64 ky)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 ky) (+.f64 ky (PI.f64)))) (cos.f64 (+.f64 (neg.f64 ky) (+.f64 ky (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 ky) (neg.f64 ky))) (cos.f64 (+.f64 (neg.f64 ky) (neg.f64 ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64))
(neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 ky)))
(neg.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 ky))))
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 ky)))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 ky)))
(fabs.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 ky))))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 ky))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 ky (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))

eval182.0ms (1.3%)

Memory
32.8MiB live, 288.3MiB allocated
Compiler

Compiled 21 265 to 3 085 computations (85.5% saved)

prune165.0ms (1.1%)

Memory
-40.1MiB live, 217.5MiB allocated
Pruning

31 alts after pruning (28 fresh and 3 done)

PrunedKeptTotal
New72123744
Fresh11516
Picked235
Done000
Total73431765
Accuracy
100.0%
Counts
765 → 31
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
43.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
23.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
45.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
75.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
42.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
44.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
21.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
75.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
52.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
31.4%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
29.5%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
33.0%
(*.f64 (sqrt.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
52.4%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))))))
32.1%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
29.3%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))))
35.0%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
70.8%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
32.2%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
28.2%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
25.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
75.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) (sin.f64 th))
24.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
32.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
17.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
34.0%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
24.5%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
27.5%
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
Compiler

Compiled 1 604 to 1 179 computations (26.5% saved)

simplify172.0ms (1.2%)

Memory
-5.6MiB live, 235.3MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
cost-diff2
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
cost-diff2
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
cost-diff0
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
cost-diff0
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
cost-diff0
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
cost-diff2
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
cost-diff0
(sin.f64 ky)
cost-diff0
(sin.f64 th)
cost-diff0
(*.f64 (sin.f64 th) (sin.f64 ky))
cost-diff0
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041358
069338
1119338
2278338
3697326
41887326
53454326
65482326
08284314
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(sin.f64 ky)
ky
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))
(fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64))
(*.f64 ky ky)
#s(literal -1/3 binary64)
#s(literal 1 binary64)
(sin.f64 th)
th
Outputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (sin.f64 th) (sin.f64 ky))
(*.f64 (sin.f64 ky) (sin.f64 th))
(sin.f64 th)
th
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(sin.f64 ky)
ky
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky)))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))))
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))
#s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky)))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))
(fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64))
(*.f64 ky ky)
#s(literal -1/3 binary64)
#s(literal 1 binary64)
(sin.f64 th)
th

localize130.0ms (0.9%)

Memory
54.5MiB live, 252.4MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.16015625
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
accuracy0.21484375
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy3.368806192132544
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))
accuracy33.205176390165065
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))
accuracy0.11328125
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
accuracy0.14453125
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.16015625
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
accuracy35.0487380731886
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
accuracy0.00390625
(sin.f64 th)
accuracy0.14453125
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
accuracy0.16015625
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
accuracy44.96308398871782
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
accuracy0.0703125
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
accuracy0.11328125
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
accuracy35.0487380731886
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
accuracy42.93660357041274
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
accuracy0.00390625
(sin.f64 th)
accuracy0.03515625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.21875
(*.f64 (sin.f64 th) (sin.f64 ky))
accuracy2.499648763602325
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Samples
106.0ms256×0valid
Compiler

Compiled 298 to 31 computations (89.6% saved)

Precisions
Click to see histograms. Total time spent on operations: 63.0ms
ival-sin: 21.0ms (33.4% of total)
ival-mult: 16.0ms (25.4% of total)
const: 7.0ms (11.1% of total)
ival-div: 5.0ms (7.9% of total)
ival-add: 4.0ms (6.4% of total)
ival-hypot: 4.0ms (6.4% of total)
ival-pow2: 4.0ms (6.4% of total)
ival-sqrt: 2.0ms (3.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series24.0ms (0.2%)

Memory
-2.0MiB live, 58.5MiB allocated
Counts
20 → 66
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
(sin.f64 ky)
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))))))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(pow (sin kx) 2)
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* (sin ky) (sin th))
(* -1/3 (pow ky 4))
(* (pow ky 4) (- (/ 1 (pow ky 2)) 1/3))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1/6 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

TimeVariablePointExpression
4.0ms
kx
@0
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (+ (* (* ky ky) -1/3) 1) (* ky ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow (sin ky) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))
3.0ms
ky
@inf
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (+ (* (* ky ky) -1/3) 1) (* ky ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow (sin ky) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))
2.0ms
ky
@-inf
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (+ (* (* ky ky) -1/3) 1) (* ky ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow (sin ky) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))
2.0ms
th
@-inf
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (+ (* (* ky ky) -1/3) 1) (* ky ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow (sin ky) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))
2.0ms
th
@inf
((/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (sin th) (sin ky) (* (+ (* (* th th) -1/6) 1) th) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (+ (* (* th th) -1/6) 1) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (+ (* (* ky ky) -1/3) 1) (* ky ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (pow (sin ky) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))

simplify209.0ms (1.5%)

Memory
-15.9MiB live, 230.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03811660
113701566
261371534
082071439
Stop Event
iter limit
node limit
Counts
66 → 64
Calls
Call 1
Inputs
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(pow (sin kx) 2)
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(pow ky 2)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(* (sin ky) (sin th))
(* -1/3 (pow ky 4))
(* (pow ky 4) (- (/ 1 (pow ky 2)) 1/3))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1/6 (pow th 2))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (*.f64 (*.f64 kx kx) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 kx kx) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) #s(literal 1/2 binary64)) (sin.f64 ky)) (*.f64 kx kx) (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (sin ky))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (sin ky))))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 ky)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) kx) kx) #s(literal 1/3 binary64)) (*.f64 kx kx))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (sin.f64 th) (/.f64 #s(literal -1/6 binary64) (sin.f64 kx)) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (+.f64 (/.f64 (*.f64 (sin.f64 th) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64))) (sin.f64 kx)) (*.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (+.f64 (/.f64 (*.f64 (sin.f64 th) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64))) (sin.f64 kx)) (*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (sin.f64 th)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 (fma.f64 #s(literal -1/5040 binary64) (sin.f64 th) (/.f64 (*.f64 #s(literal -1/240 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (sin th))
(*.f64 (sin.f64 th) ky)
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sin.f64 th) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64))) (*.f64 (sin.f64 th) ky))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(*.f64 (fma.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th) (*.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 th) (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64))))) ky)
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)
(/ ky (sin kx))
(/.f64 ky (sin.f64 kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (*.f64 ky (*.f64 (neg.f64 ky) ky)) (/.f64 (+.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/6 binary64)) (sin.f64 kx)) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (fma.f64 (+.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (-.f64 (fma.f64 (+.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (fma.f64 (/.f64 (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))) (sin.f64 kx) (-.f64 (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/5040 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (-.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal -3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.f64 #s(literal 1/120 binary64) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1/6 binary64) (sin.f64 kx))) (/.f64 ky (sin.f64 kx)))
(sin kx)
(sin.f64 kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (/.f64 (fma.f64 (*.f64 ky ky) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64)) #s(literal 1/2 binary64)) (sin.f64 kx)) (*.f64 ky ky) (sin.f64 kx))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (/.f64 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64) #s(literal 2/45 binary64)) (fma.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal -1/6 binary64))) (sin.f64 kx)) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) ky (sin.f64 kx)))
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 2/45 (* -1/315 (pow ky 2)))) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky))
(* (sin ky) (sin th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(* -1/3 (pow ky 4))
(*.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64))
(* (pow ky 4) (- (/ 1 (pow ky 2)) 1/3))
(*.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 ky ky)) #s(literal 1/3 binary64)))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 (sin.f64 ky) th))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) th) th) #s(literal 1/6 binary64)) th)
(+ 1 (* -1/6 (pow th 2)))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(* -1/6 (pow th 3))
(*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64)))
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(*.f64 (pow.f64 (neg.f64 th) #s(literal 3 binary64)) (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 th th))))

rewrite244.0ms (1.7%)

Memory
-10.3MiB live, 255.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
041255
069235
1227235
21532235
09657235
Stop Event
iter limit
node limit
iter limit
Counts
20 → 324
Calls
Call 1
Inputs
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 th) (sin.f64 ky))
(sin.f64 th)
(sin.f64 ky)
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky))))))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64)))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (sin.f64 th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th)))) #s(literal -2 binary64))
(/.f64 (neg.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))))) #s(literal 2 binary64))
(/.f64 (-.f64 (*.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (cos.f64 (+.f64 ky th)))) #s(literal 4 binary64))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) #s(literal -2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) #s(literal 2 binary64))
(-.f64 (/.f64 (cos.f64 (-.f64 ky th)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)))
(sin.f64 th)
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 ky))) (fabs.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64))))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (neg.f64 (sin.f64 ky))))
(fabs.f64 (neg.f64 (sin.f64 ky)))
(fabs.f64 (sin.f64 ky))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 ky))) (sinh.f64 (log.f64 (sin.f64 ky))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)
(*.f64 th (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64)) th)) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64)) th)) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
(/.f64 (neg.f64 (*.f64 th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 th (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64)))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64)) th) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64)) th) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(/.f64 (*.f64 th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))
(/.f64 (*.f64 th (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th (*.f64 #s(literal 1 binary64) th))
(fma.f64 #s(literal 1 binary64) th (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th))
(fma.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) (*.f64 th #s(literal 1 binary64)))
(fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(+.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th) (*.f64 #s(literal 1 binary64) th))
(+.f64 (*.f64 #s(literal 1 binary64) th) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th))
(+.f64 (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))) (*.f64 th #s(literal 1 binary64)))
(+.f64 (*.f64 th #s(literal 1 binary64)) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th))
(/.f64 (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64)))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))))) (neg.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (*.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) #s(literal 1 binary64))) (*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
(/.f64 (-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))
(/.f64 (neg.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64))) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
(/.f64 (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64)) (+.f64 #s(literal 1 binary64) (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64)) #s(literal 1 binary64)) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 th)) (neg.f64 th) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64))
(fma.f64 (neg.f64 th) (*.f64 (neg.f64 th) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64) #s(literal 1 binary64))
(fma.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(fma.f64 th (*.f64 (*.f64 #s(literal -1/6 binary64) th) #s(literal 1 binary64)) #s(literal 1 binary64))
(fma.f64 th (*.f64 #s(literal -1/6 binary64) th) #s(literal 1 binary64))
(-.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))))
(-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (*.f64 th th)) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 th) (*.f64 #s(literal -1/6 binary64) th)))
(-.f64 #s(literal 1 binary64) (*.f64 #s(literal 1/6 binary64) (*.f64 th th)))
(+.f64 (/.f64 (*.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))) (pow.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))) #s(literal -1 binary64)))
(+.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))
(+.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/6 binary64) (*.f64 th th)))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64)))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 #s(literal 2 binary64) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 #s(literal 2 binary64) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 #s(literal 2 binary64) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 #s(literal 2 binary64) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
(-.f64 (/.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (/.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))))
#s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))
(*.f64 (/.f64 #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)))
(*.f64 #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 ky) (/.f64 #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)) (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(approx (sin th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) th)) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (neg.f64 ky)) (neg.f64 ky))
(*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)
(*.f64 (neg.f64 ky) (*.f64 (neg.f64 ky) (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64))))
(*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky))
(*.f64 (*.f64 ky ky) (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)))
(*.f64 ky (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky))
(/.f64 (neg.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/9 binary64) (pow.f64 ky #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 ky ky))) (neg.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 (fma.f64 #s(literal -1/27 binary64) (pow.f64 ky #s(literal 6 binary64)) #s(literal 1 binary64)) (*.f64 ky ky))) (neg.f64 (fma.f64 #s(literal 1/9 binary64) (pow.f64 ky #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky))))))
(/.f64 (neg.f64 (*.f64 (*.f64 ky ky) (-.f64 (*.f64 #s(literal 1/9 binary64) (pow.f64 ky #s(literal 4 binary64))) #s(literal 1 binary64)))) (neg.f64 (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (*.f64 (*.f64 ky ky) (fma.f64 #s(literal -1/27 binary64) (pow.f64 ky #s(literal 6 binary64)) #s(literal 1 binary64)))) (neg.f64 (fma.f64 #s(literal 1/9 binary64) (pow.f64 ky #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky))))))
(/.f64 (*.f64 (-.f64 (*.f64 #s(literal 1/9 binary64) (pow.f64 ky #s(literal 4 binary64))) #s(literal 1 binary64)) (*.f64 ky ky)) (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 #s(literal -1/27 binary64) (pow.f64 ky #s(literal 6 binary64)) #s(literal 1 binary64)) (*.f64 ky ky)) (fma.f64 #s(literal 1/9 binary64) (pow.f64 ky #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)))))
(/.f64 (*.f64 (*.f64 ky ky) (-.f64 (*.f64 #s(literal 1/9 binary64) (pow.f64 ky #s(literal 4 binary64))) #s(literal 1 binary64))) (-.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) #s(literal 1 binary64)))
(/.f64 (*.f64 (*.f64 ky ky) (fma.f64 #s(literal -1/27 binary64) (pow.f64 ky #s(literal 6 binary64)) #s(literal 1 binary64))) (fma.f64 #s(literal 1/9 binary64) (pow.f64 ky #s(literal 4 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)))))
(fma.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) (*.f64 ky ky) (*.f64 #s(literal 1 binary64) (*.f64 ky ky)))
(fma.f64 (*.f64 ky ky) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) (*.f64 (*.f64 ky ky) #s(literal 1 binary64)))
(fma.f64 (*.f64 ky ky) #s(literal 1 binary64) (*.f64 (*.f64 ky ky) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky))))
(fma.f64 #s(literal 1 binary64) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) (*.f64 ky ky)))
(+.f64 (*.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) (*.f64 ky ky)) (*.f64 #s(literal 1 binary64) (*.f64 ky ky)))
(+.f64 (*.f64 #s(literal 1 binary64) (*.f64 ky ky)) (*.f64 (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky)) (*.f64 ky ky)))
(+.f64 (*.f64 (*.f64 ky ky) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky))) (*.f64 (*.f64 ky ky) #s(literal 1 binary64)))
(+.f64 (*.f64 (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 (*.f64 ky ky) (*.f64 #s(literal -1/3 binary64) (*.f64 ky ky))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))))
(*.f64 #s(literal -1 binary64) (/.f64 (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 th ky) (+.f64 ky th)) #s(literal 2 binary64)))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(/.f64 (neg.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th)))) (neg.f64 (*.f64 #s(literal 2 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(/.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 ky th))) (*.f64 #s(literal 2 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))
(-.f64 (/.f64 (cos.f64 (-.f64 th ky)) (*.f64 #s(literal 2 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))) (/.f64 (cos.f64 (+.f64 ky th)) (*.f64 #s(literal 2 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(-.f64 (/.f64 (/.f64 (cos.f64 (-.f64 th ky)) #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))) (/.f64 (/.f64 (cos.f64 (+.f64 ky th)) #s(literal 2 binary64)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (sin.f64 ky))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (sin.f64 kx))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (sin.f64 ky))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (sin.f64 kx))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 ky)))
(hypot.f64 (neg.f64 (sin.f64 kx)) (sin.f64 ky))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (neg.f64 (sin.f64 ky)) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(hypot.f64 (sin.f64 kx) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 kx) (neg.f64 (neg.f64 (sin.f64 ky))))
(hypot.f64 (sin.f64 kx) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (sin.f64 ky) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(hypot.f64 (sin.f64 ky) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (sin.f64 ky) (neg.f64 (sin.f64 kx)))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
#s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))
(*.f64 (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) #s(literal 2 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (fabs.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))))) (fabs.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 kx) (neg.f64 kx))) (cos.f64 (+.f64 (neg.f64 kx) (neg.f64 kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 kx) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (neg.f64 kx) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (neg.f64 kx))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (neg.f64 kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (/.f64 (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (neg.f64 kx)))))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(fabs.f64 (-.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))

eval107.0ms (0.7%)

Memory
-2.2MiB live, 186.1MiB allocated
Compiler

Compiled 19 249 to 2 277 computations (88.2% saved)

prune66.0ms (0.5%)

Memory
0.4MiB live, 121.9MiB allocated
Pruning

47 alts after pruning (42 fresh and 5 done)

PrunedKeptTotal
New62824652
Fresh51823
Picked235
Done123
Total63647683
Accuracy
100.0%
Counts
683 → 47
Alt Table
Click to see full alt table
StatusAccuracyProgram
23.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx)))
96.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
75.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
75.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))))
30.3%
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
41.6%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
45.3%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
45.5%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
41.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
29.3%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
11.9%
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
45.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
33.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
33.7%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
21.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
75.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
34.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
52.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
25.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
31.4%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
29.5%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
30.9%
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
28.3%
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
33.0%
(*.f64 (sqrt.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
52.4%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))))))
32.1%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
70.8%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
32.2%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
28.2%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
31.4%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
25.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
75.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) (sin.f64 th))
24.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
32.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
17.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
16.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
9.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
8.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
8.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
8.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
34.0%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
24.5%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
27.5%
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
Compiler

Compiled 2 552 to 1 870 computations (26.7% saved)

simplify120.0ms (0.8%)

Memory
30.4MiB live, 215.1MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))
cost-diff0
#s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th))
cost-diff0
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff2
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
cost-diff0
#s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
cost-diff0
(sin.f64 ky)
cost-diff0
(sqrt.f64 (sin.f64 ky))
cost-diff0
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
cost-diff0
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
cost-diff0
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
cost-diff1
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
cost-diff0
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
cost-diff0
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)
cost-diff0
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
cost-diff0
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
cost-diff0
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))
cost-diff0
#s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky)))
cost-diff0
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) (sin.f64 th))
cost-diff1
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
073519
0112514
1186514
2388514
3814510
42000507
54767507
08041494
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))
#s(literal 1 binary64)
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))
(sin.f64 ky)
ky
#s(literal 1/2 binary64)
(*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))
(cos.f64 (*.f64 #s(literal -2 binary64) kx))
(*.f64 #s(literal -2 binary64) kx)
#s(literal -2 binary64)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))
#s(literal 1 binary64)
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
#s(literal 1/2 binary64)
(*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))
(cos.f64 (*.f64 #s(literal -2 binary64) kx))
(*.f64 #s(literal -2 binary64) kx)
#s(literal -2 binary64)
kx
(*.f64 (sin.f64 th) ky)
(sin.f64 th)
th
ky
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(sqrt.f64 (sin.f64 ky))
(sin.f64 ky)
ky
#s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
#s(literal 1 binary64)
(sin.f64 th)
th
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(sin.f64 kx)
kx
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))))) (sin.f64 ky))))
#s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky)))
#s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))))) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))))) (sin.f64 ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))))
#s(literal 1 binary64)
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
(fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64))
(sin.f64 ky)
ky
#s(literal 1/2 binary64)
(*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))
(*.f64 (cos.f64 (*.f64 kx #s(literal 2 binary64))) #s(literal 1/2 binary64))
(cos.f64 (*.f64 #s(literal -2 binary64) kx))
(cos.f64 (*.f64 kx #s(literal 2 binary64)))
(*.f64 #s(literal -2 binary64) kx)
#s(literal -2 binary64)
kx
(sin.f64 th)
th
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky))
(*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) #s(literal 1/2 binary64)))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) #s(literal 1/2 binary64))))
(/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))
(/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) #s(literal 1/2 binary64)))
#s(literal 1 binary64)
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
(fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 kx #s(literal 2 binary64))) #s(literal 1/2 binary64))
#s(literal 1/2 binary64)
(*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))
(*.f64 (cos.f64 (*.f64 kx #s(literal 2 binary64))) #s(literal 1/2 binary64))
(cos.f64 (*.f64 #s(literal -2 binary64) kx))
(cos.f64 (*.f64 kx #s(literal 2 binary64)))
(*.f64 #s(literal -2 binary64) kx)
#s(literal -2 binary64)
kx
(*.f64 (sin.f64 th) ky)
(sin.f64 th)
th
ky
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))) (sqrt.f64 (sin.f64 ky)))
(sqrt.f64 (sin.f64 ky))
(sin.f64 ky)
ky
#s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
#s(literal 1 binary64)
(sin.f64 th)
th
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th) (sin.f64 ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th))
#s(approx (* (sin th) (sin ky)) (*.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th) (sin.f64 ky)))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(*.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th) (sin.f64 ky))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(*.f64 th th)
th
#s(literal -1/6 binary64)
#s(literal 1 binary64)
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx

localize450.0ms (3.1%)

Memory
-39.4MiB live, 671.1MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.0859375
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
accuracy2.425430013602325
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy2.6467019807200685
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))
accuracy26.44127107549555
#s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th))
accuracy0.07421875
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
accuracy0.18425751953688402
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
accuracy0.26171875
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))
accuracy28.386971738727738
#s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
accuracy2.7624639776747664
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky))
accuracy10.570417350147578
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
accuracy12.368415518033254
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
accuracy26.127242097228837
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
accuracy0.12890625
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
accuracy21.891271337439225
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
accuracy26.484505026710686
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
accuracy28.296466903326905
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
accuracy0.1875
(/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))
accuracy0.248378759768442
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))
accuracy3.4042768999423743
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
accuracy11.668771375633256
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
Samples
217.0ms61×2valid
86.0ms101×0valid
33.0ms60×0invalid
31.0ms13×3valid
19.0ms21×1valid
Compiler

Compiled 415 to 57 computations (86.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 304.0ms
ival-mult: 106.0ms (34.9% of total)
ival-cos: 70.0ms (23.1% of total)
ival-sin: 27.0ms (8.9% of total)
ival-pow2: 24.0ms (7.9% of total)
adjust: 20.0ms (6.6% of total)
ival-div: 16.0ms (5.3% of total)
ival-sqrt: 16.0ms (5.3% of total)
ival-add: 7.0ms (2.3% of total)
ival-sub: 6.0ms (2% of total)
ival-hypot: 6.0ms (2% of total)
const: 5.0ms (1.6% of total)
exact: 1.0ms (0.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series132.0ms (0.9%)

Memory
56.2MiB live, 234.8MiB allocated
Counts
25 → 150
Calls
Call 1
Inputs
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(sqrt.f64 (sin.f64 ky))
(sin.f64 ky)
#s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
Outputs
(pow (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(/ (* ky (sin th)) kx)
(/ (+ (* 1/6 (* (pow kx 2) (* ky (sin th)))) (* ky (sin th))) kx)
(/ (+ (* ky (sin th)) (* (pow kx 2) (+ (* 7/360 (* (pow kx 2) (* ky (sin th)))) (* 1/6 (* ky (sin th)))))) kx)
(/ (+ (* ky (sin th)) (* (pow kx 2) (+ (* 1/6 (* ky (sin th))) (* (pow kx 2) (+ (* 31/15120 (* (pow kx 2) (* ky (sin th)))) (* 7/360 (* ky (sin th)))))))) kx)
(/ 1 kx)
(/ (+ 1 (* 1/6 (pow kx 2))) kx)
(/ (+ 1 (* (pow kx 2) (+ 1/6 (* 7/360 (pow kx 2))))) kx)
(/ (+ 1 (* (pow kx 2) (+ 1/6 (* (pow kx 2) (+ 7/360 (* 31/15120 (pow kx 2))))))) kx)
(* (sqrt (/ 1 (sin ky))) (sin th))
(+ (* -1/2 (* (* (pow kx 2) (sin th)) (sqrt (/ 1 (pow (sin ky) 5))))) (* (sqrt (/ 1 (sin ky))) (sin th)))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* 1/2 (* (* (pow kx 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))))) (sqrt (sin ky)))))))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 3))) (+ (* 2/3 (/ 1 (pow (sin ky) 5))) (/ 1 (pow (sin ky) 7))))))) (sqrt (sin ky)))) (* 1/2 (* (sqrt (sin ky)) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5))))))))))))
(/ 1 (sin ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(/ 1 (pow (sin ky) 2))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx)))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(- 1/2 (* 1/2 (cos (* -2 kx))))
(* (* ky (sin th)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))
(sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(* (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th))
(sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx))))))
(/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx)))))
(- (+ 1/2 (pow ky 2)) (* 1/2 (cos (* -2 kx))))
(- (+ 1/2 (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))) (* 1/2 (cos (* -2 kx))))
(- (+ 1/2 (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))) (* 1/2 (cos (* -2 kx))))
(* (* ky (sin th)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4)))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/5040 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))))))))
(* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/5040 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))))))))))
(* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx)))))))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (+ (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* -2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 4))))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* -1/12 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* -1/240 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* -1/5040 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))))))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(sqrt ky)
(+ (sqrt ky) (* -1/12 (sqrt (pow ky 5))))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* 1/240 (sqrt (pow ky 3))))))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* (pow ky 2) (+ (* -1/288 (sqrt (/ 1 ky))) (* 1/240 (sqrt (/ 1 ky))))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(* (sqrt ky) (/ (sin th) (sin kx)))
(+ (* -1/2 (* (sqrt (pow ky 5)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (sqrt ky) (/ (sin th) (sin kx))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* 1/2 (* (sqrt (pow ky 3)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (pow ky 2) (+ (* -1/8 (* (sqrt (/ 1 ky)) (* (pow (sin kx) 3) (* (sin th) (pow (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) 2))))) (* 1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))))
(* ky (* th (+ 1 (* -1/6 (pow th 2)))))
(* ky (+ (* -1/6 (* (pow ky 2) (* th (+ 1 (* -1/6 (pow th 2)))))) (* th (+ 1 (* -1/6 (pow th 2))))))
(* ky (+ (* th (+ 1 (* -1/6 (pow th 2)))) (* (pow ky 2) (+ (* -1/6 (* th (+ 1 (* -1/6 (pow th 2))))) (* 1/120 (* (pow ky 2) (* th (+ 1 (* -1/6 (pow th 2))))))))))
(* ky (+ (* th (+ 1 (* -1/6 (pow th 2)))) (* (pow ky 2) (+ (* -1/6 (* th (+ 1 (* -1/6 (pow th 2))))) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (* th (+ 1 (* -1/6 (pow th 2)))))) (* 1/120 (* th (+ 1 (* -1/6 (pow th 2)))))))))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(* ky (+ 1 (* -1/6 (pow th 2))))
(* ky (+ 1 (+ (* -1/6 (* (pow ky 2) (+ 1 (* -1/6 (pow th 2))))) (* -1/6 (pow th 2)))))
(* ky (+ 1 (+ (* -1/6 (pow th 2)) (* (pow ky 2) (+ (* -1/6 (+ 1 (* -1/6 (pow th 2)))) (* 1/120 (* (pow ky 2) (+ 1 (* -1/6 (pow th 2))))))))))
(* ky (+ 1 (+ (* -1/6 (pow th 2)) (* (pow ky 2) (+ (* -1/6 (+ 1 (* -1/6 (pow th 2)))) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (+ 1 (* -1/6 (pow th 2))))) (* 1/120 (+ 1 (* -1/6 (pow th 2)))))))))))
(+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* -1/2 (* (pow ky 2) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))))))
(+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* 1/2 (* (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))))))
(+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* (pow ky 2) (+ (* -1/2 (* (* (pow ky 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* -2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 4)))))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))
(/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))
(+ (* -1 (/ (pow ky 2) (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2)))) (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 4)))))) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2)))) (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(* (sqrt (/ 1 ky)) (sin th))
(/ (+ (* 1/12 (* (sqrt (pow ky 5)) (sin th))) (* (sqrt ky) (sin th))) ky)
(/ (+ (* (sqrt ky) (sin th)) (* (pow ky 3) (+ (* 7/720 (* (sqrt (pow ky 3)) (sin th))) (* 1/12 (* (sqrt (/ 1 ky)) (sin th)))))) ky)
(/ (+ (* (sqrt ky) (sin th)) (* (pow ky 3) (+ (* 1/12 (* (sqrt (/ 1 ky)) (sin th))) (* (pow ky 2) (+ (* -1/288 (* (sqrt (/ 1 ky)) (sin th))) (* 7/720 (* (sqrt (/ 1 ky)) (sin th)))))))) ky)
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(sqrt (sin ky))
(sin ky)
(* th (* (sin ky) (+ 1 (* -1/6 (pow th 2)))))
(* (sin ky) (sin th))
(* (sin ky) (+ 1 (* -1/6 (pow th 2))))
(* (* th (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(* (* ky th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))
(* th (+ (* -1/6 (* (* ky (pow th 2)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))))
(* th (+ (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow th 2) (+ (* -1/6 (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* 1/120 (* (* ky (pow th 2)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))
(* th (+ (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow th 2) (+ (* -1/6 (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* (pow th 2) (+ (* -1/5040 (* (* ky (pow th 2)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* 1/120 (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))))
(* th (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(+ (sin ky) (* -1/6 (* (pow th 2) (sin ky))))
(* -1/6 (pow th 2))
(* th (sqrt (/ 1 (sin ky))))
(* th (+ (sqrt (/ 1 (sin ky))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (sin ky)))))))
(* th (+ (sqrt (/ 1 (sin ky))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (sin ky)))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (sin ky)))))))))
(* th (+ (sqrt (/ 1 (sin ky))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (sin ky)))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (sin ky))))) (* 1/120 (sqrt (/ 1 (sin ky))))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1/6 (* (pow th 3) (sin ky)))
(* (pow th 3) (+ (* -1/6 (sin ky)) (/ (sin ky) (pow th 2))))
(* -1/6 (* (pow th 2) (sin ky)))
(* (pow th 2) (+ (* -1/6 (sin ky)) (/ (sin ky) (pow th 2))))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(* -1 (* (pow th 3) (+ (* -1 (/ (sin ky) (pow th 2))) (* 1/6 (sin ky)))))
Calls

9 calls:

TimeVariablePointExpression
40.0ms
ky
@-inf
((- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (- 1/2 (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (sin ky) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (* (+ (* (* th th) -1/6) 1) (sin ky)) th) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (* (+ (* (* th th) -1/6) 1) (sin ky)) (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (* (* th th) -1/6) (* (sqrt (/ 1 (sin ky))) (sin th)) (/ 1 (sin ky)))
18.0ms
ky
@0
((- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (- 1/2 (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (sin ky) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (* (+ (* (* th th) -1/6) 1) (sin ky)) th) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (* (+ (* (* th th) -1/6) 1) (sin ky)) (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (* (* th th) -1/6) (* (sqrt (/ 1 (sin ky))) (sin th)) (/ 1 (sin ky)))
17.0ms
th
@inf
((- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (- 1/2 (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (sin ky) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (* (+ (* (* th th) -1/6) 1) (sin ky)) th) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (* (+ (* (* th th) -1/6) 1) (sin ky)) (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (* (* th th) -1/6) (* (sqrt (/ 1 (sin ky))) (sin th)) (/ 1 (sin ky)))
14.0ms
ky
@inf
((- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (- 1/2 (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (sin ky) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (* (+ (* (* th th) -1/6) 1) (sin ky)) th) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (* (+ (* (* th th) -1/6) 1) (sin ky)) (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (* (* th th) -1/6) (* (sqrt (/ 1 (sin ky))) (sin th)) (/ 1 (sin ky)))
11.0ms
th
@-inf
((- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (* (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (sin ky)) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin th) (* (+ (* (* th th) -1/6) 1) th) (+ (* (* th th) -1/6) 1) (- 1/2 (* (cos (* -2 kx)) 1/2)) (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sqrt (sin ky)) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))))) (sqrt (sin ky)) (sin ky) (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (* (* (+ (* (* th th) -1/6) 1) (sin ky)) th) (/ (* (sin th) (sin ky)) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (* (sin th) (sin ky)) (* (+ (* (* th th) -1/6) 1) (sin ky)) (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (* (* th th) -1/6) (* (sqrt (/ 1 (sin ky))) (sin th)) (/ 1 (sin ky)))

simplify277.0ms (1.9%)

Memory
-15.4MiB live, 427.5MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
08395392
131665062
085944833
Stop Event
iter limit
node limit
Counts
150 → 148
Calls
Call 1
Inputs
(pow (sin ky) 2)
(+ (pow kx 2) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
1
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(pow kx 2)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(/ (* ky (sin th)) kx)
(/ (+ (* 1/6 (* (pow kx 2) (* ky (sin th)))) (* ky (sin th))) kx)
(/ (+ (* ky (sin th)) (* (pow kx 2) (+ (* 7/360 (* (pow kx 2) (* ky (sin th)))) (* 1/6 (* ky (sin th)))))) kx)
(/ (+ (* ky (sin th)) (* (pow kx 2) (+ (* 1/6 (* ky (sin th))) (* (pow kx 2) (+ (* 31/15120 (* (pow kx 2) (* ky (sin th)))) (* 7/360 (* ky (sin th)))))))) kx)
(/ 1 kx)
(/ (+ 1 (* 1/6 (pow kx 2))) kx)
(/ (+ 1 (* (pow kx 2) (+ 1/6 (* 7/360 (pow kx 2))))) kx)
(/ (+ 1 (* (pow kx 2) (+ 1/6 (* (pow kx 2) (+ 7/360 (* 31/15120 (pow kx 2))))))) kx)
(* (sqrt (/ 1 (sin ky))) (sin th))
(+ (* -1/2 (* (* (pow kx 2) (sin th)) (sqrt (/ 1 (pow (sin ky) 5))))) (* (sqrt (/ 1 (sin ky))) (sin th)))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* 1/2 (* (* (pow kx 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))))) (sqrt (sin ky)))))))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 3))) (+ (* 2/3 (/ 1 (pow (sin ky) 5))) (/ 1 (pow (sin ky) 7))))))) (sqrt (sin ky)))) (* 1/2 (* (sqrt (sin ky)) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5))))))))))))
(/ 1 (sin ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(/ 1 (pow (sin ky) 2))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx)))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(- 1/2 (* 1/2 (cos (* -2 kx))))
(* (* ky (sin th)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))
(sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(* (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th))
(sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx))))))
(/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx)))))
(- (+ 1/2 (pow ky 2)) (* 1/2 (cos (* -2 kx))))
(- (+ 1/2 (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))) (* 1/2 (cos (* -2 kx))))
(- (+ 1/2 (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))) (* 1/2 (cos (* -2 kx))))
(* (* ky (sin th)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4)))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/5040 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))))))))
(* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/5040 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))))))))))
(* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx)))))))))))))))
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (+ (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* -2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 4))))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* -1/12 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* -1/240 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* -1/5040 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))))))))))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(sqrt ky)
(+ (sqrt ky) (* -1/12 (sqrt (pow ky 5))))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* 1/240 (sqrt (pow ky 3))))))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* (pow ky 2) (+ (* -1/288 (sqrt (/ 1 ky))) (* 1/240 (sqrt (/ 1 ky))))))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(* (sqrt ky) (/ (sin th) (sin kx)))
(+ (* -1/2 (* (sqrt (pow ky 5)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (sqrt ky) (/ (sin th) (sin kx))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* 1/2 (* (sqrt (pow ky 3)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (pow ky 2) (+ (* -1/8 (* (sqrt (/ 1 ky)) (* (pow (sin kx) 3) (* (sin th) (pow (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) 2))))) (* 1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))))
(* ky (* th (+ 1 (* -1/6 (pow th 2)))))
(* ky (+ (* -1/6 (* (pow ky 2) (* th (+ 1 (* -1/6 (pow th 2)))))) (* th (+ 1 (* -1/6 (pow th 2))))))
(* ky (+ (* th (+ 1 (* -1/6 (pow th 2)))) (* (pow ky 2) (+ (* -1/6 (* th (+ 1 (* -1/6 (pow th 2))))) (* 1/120 (* (pow ky 2) (* th (+ 1 (* -1/6 (pow th 2))))))))))
(* ky (+ (* th (+ 1 (* -1/6 (pow th 2)))) (* (pow ky 2) (+ (* -1/6 (* th (+ 1 (* -1/6 (pow th 2))))) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (* th (+ 1 (* -1/6 (pow th 2)))))) (* 1/120 (* th (+ 1 (* -1/6 (pow th 2)))))))))))
(* ky (sin th))
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(* ky (+ 1 (* -1/6 (pow th 2))))
(* ky (+ 1 (+ (* -1/6 (* (pow ky 2) (+ 1 (* -1/6 (pow th 2))))) (* -1/6 (pow th 2)))))
(* ky (+ 1 (+ (* -1/6 (pow th 2)) (* (pow ky 2) (+ (* -1/6 (+ 1 (* -1/6 (pow th 2)))) (* 1/120 (* (pow ky 2) (+ 1 (* -1/6 (pow th 2))))))))))
(* ky (+ 1 (+ (* -1/6 (pow th 2)) (* (pow ky 2) (+ (* -1/6 (+ 1 (* -1/6 (pow th 2)))) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (+ 1 (* -1/6 (pow th 2))))) (* 1/120 (+ 1 (* -1/6 (pow th 2)))))))))))
(+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* -1/2 (* (pow ky 2) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))))))
(+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* 1/2 (* (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))))))
(+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* (pow ky 2) (+ (* -1/2 (* (* (pow ky 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* -2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 4)))))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))
(/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))
(+ (* -1 (/ (pow ky 2) (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2)))) (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 4)))))) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2)))) (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(* (sqrt (/ 1 ky)) (sin th))
(/ (+ (* 1/12 (* (sqrt (pow ky 5)) (sin th))) (* (sqrt ky) (sin th))) ky)
(/ (+ (* (sqrt ky) (sin th)) (* (pow ky 3) (+ (* 7/720 (* (sqrt (pow ky 3)) (sin th))) (* 1/12 (* (sqrt (/ 1 ky)) (sin th)))))) ky)
(/ (+ (* (sqrt ky) (sin th)) (* (pow ky 3) (+ (* 1/12 (* (sqrt (/ 1 ky)) (sin th))) (* (pow ky 2) (+ (* -1/288 (* (sqrt (/ 1 ky)) (sin th))) (* 7/720 (* (sqrt (/ 1 ky)) (sin th)))))))) ky)
(/ 1 ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(sqrt (sin ky))
(sin ky)
(* th (* (sin ky) (+ 1 (* -1/6 (pow th 2)))))
(* (sin ky) (sin th))
(* (sin ky) (+ 1 (* -1/6 (pow th 2))))
(* (* th (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(+ 1 (* -1/6 (pow th 2)))
(* (* ky th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))
(* th (+ (* -1/6 (* (* ky (pow th 2)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))))
(* th (+ (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow th 2) (+ (* -1/6 (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* 1/120 (* (* ky (pow th 2)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))
(* th (+ (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow th 2) (+ (* -1/6 (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* (pow th 2) (+ (* -1/5040 (* (* ky (pow th 2)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* 1/120 (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))))
(* th (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(* th (sin ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(+ (sin ky) (* -1/6 (* (pow th 2) (sin ky))))
(* -1/6 (pow th 2))
(* th (sqrt (/ 1 (sin ky))))
(* th (+ (sqrt (/ 1 (sin ky))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (sin ky)))))))
(* th (+ (sqrt (/ 1 (sin ky))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (sin ky)))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (sin ky)))))))))
(* th (+ (sqrt (/ 1 (sin ky))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (sin ky)))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (sin ky))))) (* 1/120 (sqrt (/ 1 (sin ky))))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1/6 (* (pow th 3) (sin ky)))
(* (pow th 3) (+ (* -1/6 (sin ky)) (/ (sin ky) (pow th 2))))
(* -1/6 (* (pow th 2) (sin ky)))
(* (pow th 2) (+ (* -1/6 (sin ky)) (/ (sin ky) (pow th 2))))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(* -1 (* (pow th 3) (+ (* -1 (/ (sin ky) (pow th 2))) (* 1/6 (sin ky)))))
Outputs
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(+ (pow kx 2) (pow (sin ky) 2))
(fma.f64 kx kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* -1/3 (pow kx 2)))) (pow (sin ky) 2))
(fma.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3)))) (pow (sin ky) 2))
(fma.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 (*.f64 kx kx) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)))) (*.f64 kx kx) (sin.f64 th))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) (sin.f64 th))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 kx kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 2/45 (* -1/315 (pow kx 2)))) 1/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))
(/ (* ky (sin th)) kx)
(/.f64 (*.f64 (sin.f64 th) ky) kx)
(/ (+ (* 1/6 (* (pow kx 2) (* ky (sin th)))) (* ky (sin th))) kx)
(/.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 (sin.f64 th) ky)) kx)
(/ (+ (* ky (sin th)) (* (pow kx 2) (+ (* 7/360 (* (pow kx 2) (* ky (sin th)))) (* 1/6 (* ky (sin th)))))) kx)
(/.f64 (fma.f64 (*.f64 (*.f64 (sin.f64 th) ky) (fma.f64 #s(literal 7/360 binary64) (*.f64 kx kx) #s(literal 1/6 binary64))) (*.f64 kx kx) (*.f64 (sin.f64 th) ky)) kx)
(/ (+ (* ky (sin th)) (* (pow kx 2) (+ (* 1/6 (* ky (sin th))) (* (pow kx 2) (+ (* 31/15120 (* (pow kx 2) (* ky (sin th)))) (* 7/360 (* ky (sin th)))))))) kx)
(/.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/6 binary64) ky) (sin.f64 th) (*.f64 (*.f64 (*.f64 (sin.f64 th) ky) (fma.f64 #s(literal 31/15120 binary64) (*.f64 kx kx) #s(literal 7/360 binary64))) (*.f64 kx kx))) (*.f64 kx kx) (*.f64 (sin.f64 th) ky)) kx)
(/ 1 kx)
(/.f64 #s(literal 1 binary64) kx)
(/ (+ 1 (* 1/6 (pow kx 2))) kx)
(/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(/ (+ 1 (* (pow kx 2) (+ 1/6 (* 7/360 (pow kx 2))))) kx)
(/.f64 (fma.f64 (fma.f64 #s(literal 7/360 binary64) (*.f64 kx kx) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(/ (+ 1 (* (pow kx 2) (+ 1/6 (* (pow kx 2) (+ 7/360 (* 31/15120 (pow kx 2))))))) kx)
(/.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 31/15120 binary64) (*.f64 kx kx) #s(literal 7/360 binary64)) (*.f64 kx kx) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* (sqrt (/ 1 (sin ky))) (sin th))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))
(+ (* -1/2 (* (* (pow kx 2) (sin th)) (sqrt (/ 1 (pow (sin ky) 5))))) (* (sqrt (/ 1 (sin ky))) (sin th)))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64)))) (*.f64 (*.f64 kx kx) (sin.f64 th))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* 1/2 (* (* (pow kx 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))))) (sqrt (sin ky)))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64)))) (sin.f64 th)) (*.f64 (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (sin.f64 th)) (*.f64 kx kx)) (sqrt.f64 (sin.f64 ky))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
(+ (* (sqrt (/ 1 (sin ky))) (sin th)) (* (pow kx 2) (+ (* -1/2 (* (sqrt (/ 1 (pow (sin ky) 5))) (sin th))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 3))) (+ (* 2/3 (/ 1 (pow (sin ky) 5))) (/ 1 (pow (sin ky) 7))))))) (sqrt (sin ky)))) (* 1/2 (* (sqrt (sin ky)) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 3))) (* 3/4 (/ 1 (pow (sin ky) 5))))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 7 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))) (sin.f64 th)) (*.f64 kx kx)) (sqrt.f64 (sin.f64 ky))) (*.f64 (*.f64 (sqrt.f64 (sin.f64 ky)) (sin.f64 th)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))))) (*.f64 kx kx) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 5 binary64)))) (sin.f64 th)) #s(literal -1/2 binary64))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
(/ 1 (sin ky))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(+ (* -1/2 (/ (pow kx 2) (pow (sin ky) 3))) (/ 1 (sin ky)))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(+ (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 ky))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))))) (* 1/2 (* (sin ky) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))) (* 1/2 (/ 1 (pow (sin ky) 3))))) (/ 1 (sin ky)))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sin.f64 ky)) (*.f64 kx kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sin.f64 ky)))) (*.f64 kx kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(/ 1 (pow (sin ky) 2))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (/.f64 (*.f64 kx kx) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (-.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (-.f64 (*.f64 (fma.f64 (neg.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (*.f64 kx kx) (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (*.f64 kx kx)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx))))
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))
(* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)))
(- 1/2 (* 1/2 (cos (* -2 kx))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(* (* ky (sin th)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky))
(sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(* (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th))
(*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx))))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* -2 kx)))))
(/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(- (+ 1/2 (pow ky 2)) (* 1/2 (cos (* -2 kx))))
(-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(- (+ 1/2 (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))) (* 1/2 (cos (* -2 kx))))
(-.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(- (+ 1/2 (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))) (* 1/2 (cos (* -2 kx))))
(-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(* (* ky (sin th)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky))
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 th))) ky)
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (sin.f64 th))) #s(literal 1/2 binary64) (fma.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 th))) ky)
(* ky (+ (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* -1/6 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (* (pow ky 2) (+ (* 1/120 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))) (+ (* 1/12 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (+ (* 1/2 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4)))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (* (sin th) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))))) (* -1/5040 (* (sin th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (fma.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 4 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (sin.f64 th)) (*.f64 #s(literal -1/12 binary64) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (sin.f64 th)))) (fma.f64 (*.f64 #s(literal -1/240 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/5040 binary64) (sin.f64 th)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) (*.f64 ky ky) (*.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (sin.f64 th))) #s(literal 1/2 binary64))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 th))) ky)
(* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))
(*.f64 (fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/6 binary64))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) ky)
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx)))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (fma.f64 #s(literal 1/12 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 #s(literal 1/120 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) (*.f64 ky ky) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/6 binary64)))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) ky)
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (+ (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* 2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 4))))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/12 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* 2 kx))))))) (+ (* -1/240 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* 2 kx)))) 3)))) (* -1/5040 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* 2 kx))))))))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (fma.f64 #s(literal -1/2 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 4 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (*.f64 #s(literal -1/12 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))))) (fma.f64 #s(literal -1/240 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 #s(literal -1/5040 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) (*.f64 ky ky) (fma.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal 1/2 binary64) (*.f64 #s(literal 1/12 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))))))) (*.f64 ky ky) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/6 binary64)))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) ky)
(* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))))))
(*.f64 (fma.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/6 binary64))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) ky)
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx)))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (fma.f64 #s(literal 1/12 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 #s(literal 1/120 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) (*.f64 ky ky) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/6 binary64)))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) ky)
(* ky (+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (+ (* -1/6 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* 1/12 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (+ (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* -1/2 (* (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* -2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 4))))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* -1/12 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (+ (* -1/240 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* -1/5040 (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 #s(literal 1/120 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (fma.f64 #s(literal -1/2 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 4 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (*.f64 #s(literal -1/12 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))))) (fma.f64 #s(literal -1/240 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 #s(literal -1/5040 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) (*.f64 ky ky) (fma.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal 1/2 binary64) (*.f64 #s(literal 1/12 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))))))) (*.f64 ky ky) (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) #s(literal -1/6 binary64)))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) ky)
(/ (* ky (sin th)) (sin kx))
(/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sin.f64 th)) (fma.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/5040 binary64) (/.f64 (*.f64 #s(literal -1/240 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (/.f64 (*.f64 #s(literal 1/12 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1/6 binary64) (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(sqrt ky)
(sqrt.f64 ky)
(+ (sqrt ky) (* -1/12 (sqrt (pow ky 5))))
(fma.f64 (sqrt.f64 (pow.f64 ky #s(literal 5 binary64))) #s(literal -1/12 binary64) (sqrt.f64 ky))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* 1/240 (sqrt (pow ky 3))))))
(fma.f64 (fma.f64 (sqrt.f64 (pow.f64 ky #s(literal 3 binary64))) #s(literal 1/240 binary64) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) #s(literal -1/12 binary64))) (pow.f64 ky #s(literal 3 binary64)) (sqrt.f64 ky))
(+ (sqrt ky) (* (pow ky 3) (+ (* -1/12 (sqrt (/ 1 ky))) (* (pow ky 2) (+ (* -1/288 (sqrt (/ 1 ky))) (* 1/240 (sqrt (/ 1 ky))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) #s(literal 1/1440 binary64)) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) #s(literal -1/12 binary64))) (pow.f64 ky #s(literal 3 binary64)) (sqrt.f64 ky))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 ky ky)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) (*.f64 ky ky)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(* (sqrt ky) (/ (sin th) (sin kx)))
(*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))
(+ (* -1/2 (* (sqrt (pow ky 5)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (sqrt ky) (/ (sin th) (sin kx))))
(fma.f64 (*.f64 (*.f64 (sqrt.f64 (pow.f64 ky #s(literal 5 binary64))) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th))) #s(literal -1/2 binary64) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* 1/2 (* (sqrt (pow ky 3)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) (sin.f64 kx)) (*.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th))) (*.f64 (*.f64 (sqrt.f64 (pow.f64 ky #s(literal 3 binary64))) (sin.f64 kx)) (*.f64 (+.f64 (+.f64 (/.f64 #s(literal 1/120 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 th))))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))
(+ (* (sqrt ky) (/ (sin th) (sin kx))) (* (pow ky 3) (+ (* -1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))))))) (* (pow ky 2) (+ (* -1/8 (* (sqrt (/ 1 ky)) (* (pow (sin kx) 3) (* (sin th) (pow (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) 2))))) (* 1/2 (* (sqrt (/ 1 ky)) (* (sin kx) (* (sin th) (- (+ (* 1/120 (/ 1 (pow (sin kx) 2))) (* 1/3 (/ 1 (pow (sin kx) 4)))) (* -1 (/ (+ (* 1/6 (/ 1 (pow (sin kx) 2))) (/ 1 (pow (sin kx) 4))) (pow (sin kx) 2)))))))))))))
(fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/8 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky))) (*.f64 (*.f64 (pow.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal 2 binary64)) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (*.f64 (*.f64 #s(literal 1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky))) (*.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (+.f64 (+.f64 (/.f64 #s(literal 1/120 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky))) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sin.f64 th)) (sin.f64 kx)))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx))))
(* ky (* th (+ 1 (* -1/6 (pow th 2)))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)
(* ky (+ (* -1/6 (* (pow ky 2) (* th (+ 1 (* -1/6 (pow th 2)))))) (* th (+ 1 (* -1/6 (pow th 2))))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) ky)
(* ky (+ (* th (+ 1 (* -1/6 (pow th 2)))) (* (pow ky 2) (+ (* -1/6 (* th (+ 1 (* -1/6 (pow th 2))))) (* 1/120 (* (pow ky 2) (* th (+ 1 (* -1/6 (pow th 2))))))))))
(*.f64 (fma.f64 (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64))) (*.f64 ky ky) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) ky)
(* ky (+ (* th (+ 1 (* -1/6 (pow th 2)))) (* (pow ky 2) (+ (* -1/6 (* th (+ 1 (* -1/6 (pow th 2))))) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (* th (+ 1 (* -1/6 (pow th 2)))))) (* 1/120 (* th (+ 1 (* -1/6 (pow th 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64))) (*.f64 ky ky))) (*.f64 ky ky) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) ky)
(* ky (sin th))
(*.f64 (sin.f64 th) ky)
(* ky (+ (sin th) (* -1/6 (* (pow ky 2) (sin th)))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* 1/120 (* (pow ky 2) (sin th)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 th) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64))) (*.f64 ky ky) (sin.f64 th)) ky)
(* ky (+ (sin th) (* (pow ky 2) (+ (* -1/6 (sin th)) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (sin th))) (* 1/120 (sin th))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 th) (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64))) (*.f64 ky ky) (*.f64 #s(literal -1/6 binary64) (sin.f64 th))) (*.f64 ky ky) (sin.f64 th)) ky)
(* ky (+ 1 (* -1/6 (pow th 2))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)
(* ky (+ 1 (+ (* -1/6 (* (pow ky 2) (+ 1 (* -1/6 (pow th 2))))) (* -1/6 (pow th 2)))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 ky ky) (*.f64 th th)) #s(literal 1 binary64)) ky)
(* ky (+ 1 (+ (* -1/6 (pow th 2)) (* (pow ky 2) (+ (* -1/6 (+ 1 (* -1/6 (pow th 2)))) (* 1/120 (* (pow ky 2) (+ 1 (* -1/6 (pow th 2))))))))))
(*.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #s(literal -1/6 binary64))) (*.f64 ky ky) (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))) ky)
(* ky (+ 1 (+ (* -1/6 (pow th 2)) (* (pow ky 2) (+ (* -1/6 (+ 1 (* -1/6 (pow th 2)))) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) (+ 1 (* -1/6 (pow th 2))))) (* 1/120 (+ 1 (* -1/6 (pow th 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64))) (*.f64 ky ky) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(literal -1/6 binary64))) (*.f64 ky ky) (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))) ky)
(+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* -1/2 (* (pow ky 2) (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* 1/2 (* (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 (*.f64 ky ky) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(+ (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (sqrt (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (* (pow ky 2) (+ (* -1/2 (* (* (pow ky 2) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (- 1/2 (* 1/2 (cos (* -2 kx)))))) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 4)))))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* 1/2 (* (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (* 3/4 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (sqrt (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 4 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (*.f64 ky ky)) (*.f64 #s(literal 1/2 binary64) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) #s(literal -1/2 binary64))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))
(/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(+ (* -1 (/ (pow ky 2) (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))) #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3)))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2)))) (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(fma.f64 (-.f64 (*.f64 (+.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (*.f64 ky ky)) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (+ (* 2/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 4)))))) (+ (* 1/3 (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 3))))) (/ 1 (pow (- 1/2 (* 1/2 (cos (* -2 kx)))) 2)))) (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))
(fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 (neg.f64 ky) ky) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 4 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (+.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))))) (*.f64 ky ky)) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 2 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(* (sqrt (/ 1 ky)) (sin th))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) (sin.f64 th))
(/ (+ (* 1/12 (* (sqrt (pow ky 5)) (sin th))) (* (sqrt ky) (sin th))) ky)
(/.f64 (*.f64 (sin.f64 th) (fma.f64 #s(literal 1/12 binary64) (sqrt.f64 (pow.f64 ky #s(literal 5 binary64))) (sqrt.f64 ky))) ky)
(/ (+ (* (sqrt ky) (sin th)) (* (pow ky 3) (+ (* 7/720 (* (sqrt (pow ky 3)) (sin th))) (* 1/12 (* (sqrt (/ 1 ky)) (sin th)))))) ky)
(/.f64 (fma.f64 (*.f64 (sin.f64 th) (fma.f64 #s(literal 1/12 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) (*.f64 #s(literal 7/720 binary64) (sqrt.f64 (pow.f64 ky #s(literal 3 binary64)))))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 ky) (sin.f64 th))) ky)
(/ (+ (* (sqrt ky) (sin th)) (* (pow ky 3) (+ (* 1/12 (* (sqrt (/ 1 ky)) (sin th))) (* (pow ky 2) (+ (* -1/288 (* (sqrt (/ 1 ky)) (sin th))) (* 7/720 (* (sqrt (/ 1 ky)) (sin th)))))))) ky)
(/.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/12 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th) (*.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) ky)) (sin.f64 th)) #s(literal 1/160 binary64)) (*.f64 ky ky))) (pow.f64 ky #s(literal 3 binary64)) (*.f64 (sqrt.f64 ky) (sin.f64 th))) ky)
(/ 1 ky)
(/.f64 #s(literal 1 binary64) ky)
(/ (+ 1 (* 1/6 (pow ky 2))) ky)
(/.f64 (fma.f64 (*.f64 ky ky) #s(literal 1/6 binary64) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* 7/360 (pow ky 2))))) ky)
(/.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 7/360 binary64) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(/ (+ 1 (* (pow ky 2) (+ 1/6 (* (pow ky 2) (+ 7/360 (* 31/15120 (pow ky 2))))))) ky)
(/.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal 31/15120 binary64) #s(literal 7/360 binary64)) (*.f64 ky ky) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)
(sqrt (sin ky))
(sqrt.f64 (sin.f64 ky))
(sin ky)
(sin.f64 ky)
(* th (* (sin ky) (+ 1 (* -1/6 (pow th 2)))))
(*.f64 (*.f64 th (sin.f64 ky)) (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(* (sin ky) (sin th))
(*.f64 (sin.f64 th) (sin.f64 ky))
(* (sin ky) (+ 1 (* -1/6 (pow th 2))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))
(* (* th (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))
(*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx))))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) th)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) th)
th
(* th (+ 1 (* -1/6 (pow th 2))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)
(+ 1 (* -1/6 (pow th 2)))
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
(* (* ky th) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))
(*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(* th (+ (* -1/6 (* (* ky (pow th 2)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)
(* th (+ (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow th 2) (+ (* -1/6 (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* 1/120 (* (* ky (pow th 2)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 th th) ky) (*.f64 #s(literal -1/6 binary64) ky))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) th)
(* th (+ (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))) (* (pow th 2) (+ (* -1/6 (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* (pow th 2) (+ (* -1/5040 (* (* ky (pow th 2)) (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx)))))))) (* 1/120 (* ky (sqrt (/ 1 (- 1/2 (* 1/2 (cos (* -2 kx))))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal 1/120 binary64) ky (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 th th) ky)))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) th)
(* th (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) th)
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (+ (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ (sin ky) (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))) th)
(* th (sin ky))
(*.f64 th (sin.f64 ky))
(* th (+ (sin ky) (* -1/6 (* (pow th 2) (sin ky)))))
(*.f64 (*.f64 th (sin.f64 ky)) (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* 1/120 (* (pow th 2) (sin ky)))))))
(*.f64 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sin.f64 ky)) th)
(* th (+ (sin ky) (* (pow th 2) (+ (* -1/6 (sin ky)) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sin ky))) (* 1/120 (sin ky))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky))) (*.f64 th th) (sin.f64 ky)) th)
(+ (sin ky) (* -1/6 (* (pow th 2) (sin ky))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(* th (sqrt (/ 1 (sin ky))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th)
(* th (+ (sqrt (/ 1 (sin ky))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (sin ky)))))))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky)))) th)
(* th (+ (sqrt (/ 1 (sin ky))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (sin ky)))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (sin ky)))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky)))) th)
(* th (+ (sqrt (/ 1 (sin ky))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (sin ky)))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (sin ky))))) (* 1/120 (sqrt (/ 1 (sin ky))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) #s(literal -1/6 binary64))) (*.f64 th th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky)))) th)
(* -1/6 (pow th 3))
(*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64)))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))
(* -1/6 (* (pow th 3) (sin ky)))
(*.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)) (sin.f64 ky))
(* (pow th 3) (+ (* -1/6 (sin ky)) (/ (sin ky) (pow th 2))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 ky) (/.f64 (sin.f64 ky) (*.f64 th th))) (pow.f64 th #s(literal 3 binary64)))
(* -1/6 (* (pow th 2) (sin ky)))
(*.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) (sin.f64 ky))
(* (pow th 2) (+ (* -1/6 (sin ky)) (/ (sin ky) (pow th 2))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (sin.f64 ky) (/.f64 (sin.f64 ky) (*.f64 th th))) (*.f64 th th))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
(*.f64 (neg.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 th th)))) (pow.f64 th #s(literal 3 binary64)))
(* -1 (* (pow th 3) (+ (* -1 (/ (sin ky) (pow th 2))) (* 1/6 (sin ky)))))
(*.f64 (neg.f64 (pow.f64 th #s(literal 3 binary64))) (fma.f64 #s(literal 1/6 binary64) (sin.f64 ky) (/.f64 (neg.f64 (sin.f64 ky)) (*.f64 th th))))

rewrite421.0ms (2.9%)

Memory
-31.2MiB live, 486.0MiB allocated
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
073417
0113385
1348316
22268309
09253309
Stop Event
iter limit
node limit
iter limit
Counts
25 → 383
Calls
Call 1
Inputs
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(sqrt.f64 (sin.f64 ky))
(sin.f64 ky)
#s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th)))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))
(/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
Outputs
(/.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (*.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (*.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (*.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) #s(literal -2 binary64) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(literal -2 binary64)))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) #s(literal 2 binary64) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal -2 binary64) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) #s(literal -2 binary64)))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 2 binary64) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (*.f64 #s(literal -2 binary64) (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 #s(literal -2 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (*.f64 #s(literal -2 binary64) (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))) (*.f64 #s(literal -2 binary64) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (*.f64 #s(literal -2 binary64) (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))))) (*.f64 #s(literal -2 binary64) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -2 binary64) (*.f64 #s(literal -2 binary64) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 4 binary64))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 #s(literal -2 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))) (*.f64 #s(literal -2 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal -2 binary64) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 #s(literal -2 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal -4 binary64))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (*.f64 #s(literal 2 binary64) (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 #s(literal 2 binary64) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))) (*.f64 #s(literal 2 binary64) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (*.f64 #s(literal 2 binary64) (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))))) (*.f64 #s(literal 2 binary64) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal -4 binary64))
(/.f64 (fma.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (*.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (fma.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal -2 binary64) (*.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) #s(literal -2 binary64)))
(/.f64 (fma.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 2 binary64) (*.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (*.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))))) (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) #s(literal -2 binary64) (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) #s(literal -2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) #s(literal 2 binary64) (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (*.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))))) (*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) #s(literal -2 binary64) (*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) (*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal -2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) #s(literal 2 binary64) (*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (*.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal 2 binary64)))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (*.f64 #s(literal -2 binary64) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))))) (*.f64 #s(literal -2 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (*.f64 #s(literal -2 binary64) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 #s(literal -2 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64) (*.f64 #s(literal -2 binary64) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) #s(literal 4 binary64))
(/.f64 (fma.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64) (*.f64 #s(literal -2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) #s(literal -4 binary64))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))))) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal -2 binary64) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal -2 binary64)))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))))) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal -2 binary64) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal -2 binary64)))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64))))) (*.f64 #s(literal 2 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 #s(literal 2 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal -2 binary64) (*.f64 #s(literal 2 binary64) (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))))) #s(literal -4 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64))) (+.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))))
(/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64))
(/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 2 binary64))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))) (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))) (*.f64 #s(literal 2 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (*.f64 #s(literal 2 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 4 binary64))
(/.f64 (fma.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal 2 binary64) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (*.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal 2 binary64) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (*.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) #s(literal 4 binary64))
(/.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(/.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64))))
(fma.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (+.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1 binary64))) #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (+.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (+.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1 binary64)) #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sin.f64 ky))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 #s(literal 1/2 binary64) (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))
(-.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(-.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (sin.f64 kx))))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 ky))))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 ky)))
(-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 ky))))
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (neg.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64)))) #s(literal 1/2 binary64)))
(-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(-.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 #s(literal 1/2 binary64) (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(+.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))) (/.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 2 binary64)))))
(+.f64 (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (sin.f64 kx)))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(+.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64)))
(+.f64 #s(literal 1/2 binary64) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(+.f64 #s(literal 1/2 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))
(+.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(*.f64 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64) (log.f64 (sin.f64 ky))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
(*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)
(*.f64 th #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))))
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(*.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(*.f64 (fabs.f64 (+.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1 binary64))) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (+.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 1 binary64)))
(*.f64 (+.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (neg.f64 (neg.f64 (sin.f64 kx))) (neg.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/.f64 (fabs.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (fabs.f64 (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64)))))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))) (fabs.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))))) (fabs.f64 (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (fabs.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (fabs.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 kx) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (neg.f64 kx) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (neg.f64 kx) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (neg.f64 kx))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (neg.f64 kx)))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64)))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (+.f64 kx (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (neg.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/2 binary64) (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64))
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (neg.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64)))) #s(literal 1/2 binary64)))
(-.f64 #s(literal 1/2 binary64) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(fabs.f64 (-.f64 (/.f64 (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 #s(literal 1/8 binary64) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))
(fabs.f64 (-.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (neg.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64)))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 1/2 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(exp.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(+.f64 (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64)) #s(literal 1/2 binary64))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (/.f64 (PI.f64) #s(literal 2 binary64)))))))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(+.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
(*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th))
(*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky)
(*.f64 (*.f64 (sin.f64 th) ky) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky))
(*.f64 (sin.f64 th) (*.f64 ky (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 ky (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) ky)) (sin.f64 kx))
(/.f64 (*.f64 (*.f64 (sin.f64 th) ky) #s(literal 1 binary64)) (sin.f64 kx))
(*.f64 (neg.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal -1/4 binary64))) (neg.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal -1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal -1/4 binary64))) (fabs.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal -1/4 binary64))))
(*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal -1 binary64))) (fabs.f64 (cos.f64 kx)))
(*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal -1 binary64))) (sqrt.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (pow.f64 (+.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1 binary64)) #s(literal -1/2 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal -1/2 binary64)) (pow.f64 (neg.f64 (neg.f64 (sin.f64 kx))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (fabs.f64 (cos.f64 kx)))
(*.f64 (pow.f64 (pow.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal -1/4 binary64)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal -1/4 binary64)))
(pow.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64)) (pow.f64 (sin.f64 kx) #s(literal -2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal -1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 kx) #s(literal -1 binary64))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64)))
(fabs.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal -2 binary64))) #s(literal 1/2 binary64))))
(*.f64 #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (sin.f64 th))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (sin.f64 th))))
(*.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64))))
(*.f64 (sqrt.f64 (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1/2 binary64)) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/4 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1/2 binary64))
(sqrt.f64 (sin.f64 ky))
(fabs.f64 (sqrt.f64 (sin.f64 ky)))
(exp.f64 (/.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64))))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (sin.f64 ky))))
(*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 binary64)) #s(literal 1/8 binary64)))) (sqrt.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (neg.f64 (sin.f64 ky))))
(fabs.f64 (neg.f64 (sin.f64 ky)))
(fabs.f64 (sin.f64 ky))
(exp.f64 (fma.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64) (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 ky))) (sinh.f64 (log.f64 (sin.f64 ky))))
#s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (sin.f64 th)))
(*.f64 (*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))) (sin.f64 ky))
(*.f64 (*.f64 th (sin.f64 ky)) (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 th (sin.f64 ky)))
(*.f64 th (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)))
(*.f64 (sin.f64 ky) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 th #s(literal 4 binary64)) #s(literal 1/36 binary64)) #s(literal 1 binary64)) (*.f64 th (sin.f64 ky))) (-.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (*.f64 th (sin.f64 ky))) (fma.f64 (pow.f64 th #s(literal 4 binary64)) #s(literal 1/36 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))))
(/.f64 (neg.f64 (neg.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))) (sin.f64 ky))))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))) (sin.f64 ky)))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))) (sin.f64 ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(neg.f64 (/.f64 (neg.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))) (sin.f64 ky)))) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(neg.f64 (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))) (sin.f64 ky)))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 th #s(literal 4 binary64)) #s(literal 1/36 binary64)) #s(literal 1 binary64)) (sin.f64 ky)) (-.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64)) (sin.f64 ky)) (fma.f64 (pow.f64 th #s(literal 4 binary64)) #s(literal 1/36 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))))
(/.f64 (*.f64 (sin.f64 ky) (-.f64 (*.f64 (pow.f64 th #s(literal 4 binary64)) #s(literal 1/36 binary64)) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) #s(literal 1 binary64)))
(/.f64 (*.f64 (sin.f64 ky) (fma.f64 (pow.f64 th #s(literal 6 binary64)) #s(literal -1/216 binary64) #s(literal 1 binary64))) (fma.f64 (pow.f64 th #s(literal 4 binary64)) #s(literal 1/36 binary64) (-.f64 #s(literal 1 binary64) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))))
(fma.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) (sin.f64 ky) (*.f64 #s(literal 1 binary64) (sin.f64 ky)))
(fma.f64 #s(literal 1 binary64) (sin.f64 ky) (*.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) (sin.f64 ky)))
(fma.f64 (sin.f64 ky) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) (*.f64 (sin.f64 ky) #s(literal 1 binary64)))
(fma.f64 (sin.f64 ky) #s(literal 1 binary64) (*.f64 (sin.f64 ky) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))))
(+.f64 (*.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 ky)))
(+.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) (sin.f64 ky)))
(+.f64 (*.f64 (sin.f64 ky) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) (*.f64 (sin.f64 ky) #s(literal 1 binary64)))
(+.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (*.f64 (sin.f64 ky) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))))
(*.f64 (neg.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal -1 binary64))) (hypot.f64 (sin.f64 ky) (cos.f64 kx)))
(*.f64 (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal -1 binary64))) (sqrt.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(*.f64 (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 ky) (cos.f64 kx)))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64)))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))
(fabs.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (/.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))) (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (pow.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) #s(literal -1 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(*.f64 (pow.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) #s(literal 1/8 binary64))) #s(literal -1 binary64)) (fma.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) #s(literal 2 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64))
(pow.f64 (*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(neg.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))))
(*.f64 (*.f64 #s(literal -1/6 binary64) (neg.f64 th)) (neg.f64 th))
(*.f64 (*.f64 #s(literal -1/6 binary64) th) th)
(*.f64 (neg.f64 th) (*.f64 (neg.f64 th) #s(literal -1/6 binary64)))
(*.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) #s(literal 1 binary64))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) #s(literal 1 binary64)))
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 th (*.f64 (*.f64 #s(literal -1/6 binary64) th) #s(literal 1 binary64)))
(*.f64 th (*.f64 #s(literal -1/6 binary64) th))
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (sin.f64 th))
(*.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (sqrt.f64 (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)))
(pow.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) #s(literal 1/2 binary64))
(pow.f64 (neg.f64 (neg.f64 (sin.f64 ky))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal -2 binary64))
(pow.f64 (sin.f64 ky) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (sin.f64 ky))
(neg.f64 (/.f64 #s(literal -1 binary64) (sin.f64 ky)))
(sqrt.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(exp.f64 (fma.f64 (neg.f64 (log.f64 (sin.f64 ky))) #s(literal 1/2 binary64) (*.f64 (neg.f64 (log.f64 (sin.f64 ky))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (sin.f64 ky))) #s(literal 1/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (neg.f64 (log.f64 (sin.f64 ky))))
(+.f64 (cosh.f64 (neg.f64 (log.f64 (sin.f64 ky)))) (sinh.f64 (neg.f64 (log.f64 (sin.f64 ky)))))

eval202.0ms (1.4%)

Memory
57.8MiB live, 306.5MiB allocated
Compiler

Compiled 32 935 to 3 984 computations (87.9% saved)

prune245.0ms (1.7%)

Memory
-40.5MiB live, 219.1MiB allocated
Pruning

70 alts after pruning (62 fresh and 8 done)

PrunedKeptTotal
New65833691
Fresh82937
Picked235
Done055
Total66870738
Accuracy
100.0%
Counts
738 → 70
Alt Table
Click to see full alt table
StatusAccuracyProgram
23.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx)))
96.1%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
75.4%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
75.2%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))))
30.3%
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
20.2%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
19.4%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
41.9%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
19.6%
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
29.3%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
11.9%
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
45.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
33.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
33.7%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
75.5%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
34.1%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
52.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
31.4%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
29.5%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
30.9%
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
28.3%
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
33.0%
(*.f64 (sqrt.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
25.0%
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
32.1%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
32.3%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
70.8%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
32.2%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
17.7%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
28.2%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
16.9%
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
31.4%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
25.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
28.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
75.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
24.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
42.6%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
26.8%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
26.9%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
29.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
32.8%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
27.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
32.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
17.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
17.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
9.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
9.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
8.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
8.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
8.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
8.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
16.0%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
27.5%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
28.6%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
28.6%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
34.0%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
11.2%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
24.5%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
24.4%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
9.5%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) ky)))
15.0%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
16.8%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
14.7%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
16.9%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
14.7%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
18.8%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
18.8%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
11.5%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
11.3%
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
Compiler

Compiled 5 546 to 2 294 computations (58.6% saved)

regimes473.0ms (3.3%)

Memory
25.6MiB live, 415.2MiB allocated
Counts
102 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (sqrt.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 2 binary64)) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 kx) (cos.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (*.f64 (sqrt.f64 (neg.f64 (sin.f64 ky))) (sqrt.f64 (neg.f64 (sin.f64 ky)))) (sin.f64 kx)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 (sin.f64 ky) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)))) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64)) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1/2 binary64))) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1/4 binary64) (*.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))))))
(*.f64 (/.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (pow.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Calls

9 calls:

100.0ms
kx
82.0ms
ky
67.0ms
(sin.f64 ky)
64.0ms
(sin.f64 kx)
41.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
99.7%1(sin.f64 th)
99.7%1(sin.f64 kx)
99.7%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.7%1(sin.f64 ky)
99.7%1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
99.7%1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
99.7%1kx
99.7%1ky
99.7%1th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes392.0ms (2.7%)

Memory
-36.1MiB live, 469.1MiB allocated
Counts
80 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64))))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
Calls

9 calls:

71.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
58.0ms
th
48.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
46.0ms
(sin.f64 kx)
45.0ms
kx
Results
AccuracySegmentsBranch
86.7%3(sin.f64 th)
93.9%3(sin.f64 kx)
93.9%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
95.4%3(sin.f64 ky)
97.0%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
81.7%4(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
93.9%2kx
95.3%2ky
86.7%2th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes25.0ms (0.2%)

Memory
50.2MiB live, 50.2MiB allocated
Counts
76 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th))
Calls

1 calls:

20.0ms
ky
Results
AccuracySegmentsBranch
95.3%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes280.0ms (1.9%)

Memory
-14.7MiB live, 367.8MiB allocated
Counts
75 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
Calls

8 calls:

48.0ms
(sin.f64 ky)
45.0ms
kx
41.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
40.0ms
ky
34.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
73.1%3(sin.f64 th)
73.0%3th
74.5%4(sin.f64 kx)
74.3%3(sin.f64 ky)
83.9%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
74.6%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
72.7%2kx
74.2%2ky
Compiler

Compiled 26 to 38 computations (-46.2% saved)

regimes42.0ms (0.3%)

Memory
11.0MiB live, 71.7MiB allocated
Counts
74 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
Calls

1 calls:

38.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
83.9%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes64.0ms (0.4%)

Memory
6.2MiB live, 73.7MiB allocated
Counts
73 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky)))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))
Calls

1 calls:

60.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
83.8%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes64.0ms (0.4%)

Memory
8.0MiB live, 66.6MiB allocated
Counts
70 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (exp.f64 (*.f64 (log.f64 (neg.f64 (sin.f64 kx))) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) ky)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

60.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
83.5%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes37.0ms (0.3%)

Memory
6.5MiB live, 64.9MiB allocated
Counts
66 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

33.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
83.5%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes75.0ms (0.5%)

Memory
-54.3MiB live, 77.8MiB allocated
Counts
64 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

42.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
83.3%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes94.0ms (0.7%)

Memory
40.1MiB live, 166.2MiB allocated
Counts
62 → 4
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

3 calls:

50.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
24.0ms
ky
16.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Results
AccuracySegmentsBranch
67.1%2ky
59.8%4(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
77.0%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 30 to 27 computations (10% saved)

regimes271.0ms (1.9%)

Memory
-20.6MiB live, 293.5MiB allocated
Counts
60 → 4
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

8 calls:

59.0ms
(sin.f64 ky)
58.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
42.0ms
ky
34.0ms
th
28.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
65.1%3ky
61.0%5(sin.f64 kx)
60.4%3th
62.4%4(sin.f64 th)
59.9%4kx
67.9%4(sin.f64 ky)
61.1%4(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
69.9%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 26 to 38 computations (-46.2% saved)

regimes18.0ms (0.1%)

Memory
42.8MiB live, 42.8MiB allocated
Counts
59 → 4
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

14.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
69.5%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes138.0ms (1%)

Memory
-37.1MiB live, 114.7MiB allocated
Counts
57 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 2/45 binary64)) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sqrt.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
Outputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

5 calls:

68.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
21.0ms
(sin.f64 th)
16.0ms
(sin.f64 ky)
15.0ms
ky
15.0ms
th
Results
AccuracySegmentsBranch
40.3%3th
44.0%5(sin.f64 th)
58.3%3ky
59.7%3(sin.f64 ky)
56.4%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 19 to 25 computations (-31.6% saved)

regimes510.0ms (3.5%)

Memory
-38.7MiB live, 150.8MiB allocated
Counts
54 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky))) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)) th)) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (-.f64 (fma.f64 ky ky #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))
Calls

4 calls:

382.0ms
(sin.f64 ky)
40.0ms
kx
14.0ms
ky
13.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
52.1%4ky
58.3%3kx
58.3%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
53.5%4(sin.f64 ky)
Compiler

Compiled 8 to 16 computations (-100% saved)

regimes56.0ms (0.4%)

Memory
4.4MiB live, 66.3MiB allocated
Counts
48 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 ky) (/.f64 (sin.f64 th) (sin.f64 kx)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
Calls

2 calls:

41.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
13.0ms
kx
Results
AccuracySegmentsBranch
58.3%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
58.3%3kx
Compiler

Compiled 5 to 9 computations (-80% saved)

regimes68.0ms (0.5%)

Memory
34.9MiB live, 96.1MiB allocated
Counts
44 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))
(*.f64 (/.f64 (fabs.f64 (sin.f64 ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky)) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))) (sin.f64 th))
(/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 #s(approx (* (+ (* (* th th) -1/6) 1) (sin ky)) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
Outputs
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

4 calls:

33.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
11.0ms
kx
11.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
10.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
56.4%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
46.9%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
53.6%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
53.6%3kx
Compiler

Compiled 34 to 33 computations (2.9% saved)

regimes81.0ms (0.6%)

Memory
-19.9MiB live, 41.6MiB allocated
Counts
36 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 #s(literal 1 binary64) (sin.f64 kx)) (*.f64 (sin.f64 th) ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) #s(approx (* (sqrt (/ 1 (sin ky))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (sin.f64 ky))) th))))
(*.f64 (sqrt.f64 (sin.f64 ky)) #s(approx (* (sqrt (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))))) (*.f64 (sqrt.f64 #s(approx (/ 1 (sin ky)) (/.f64 #s(literal 1 binary64) ky))) (sin.f64 th))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (cos.f64 (fma.f64 kx #s(literal -2 binary64) (PI.f64))) #s(literal 1/2 binary64) #s(literal 1/2 binary64)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) (*.f64 (sin.f64 th) ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) ky)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 kx (PI.f64)))))))) (*.f64 (sin.f64 th) ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) ky) (sin.f64 th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) ky))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) ky)))
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

2 calls:

70.0ms
(sin.f64 kx)
9.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
52.9%3(sin.f64 kx)
54.8%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 15 to 15 computations (0% saved)

regimes8.0ms (0.1%)

Memory
14.7MiB live, 14.7MiB allocated
Counts
23 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

6.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
54.8%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes66.0ms (0.5%)

Memory
12.3MiB live, 84.1MiB allocated
Counts
21 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 #s(literal 1 binary64) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 #s(approx (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (/.f64 (fma.f64 #s(literal 1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 kx kx)))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 th ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) ky) ky)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 2/45 binary64) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- 1/2 (* (cos (* -2 kx)) 1/2)) (*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 kx kx) #s(literal 2/45 binary64)) (*.f64 kx kx)) #s(literal 1/3 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (*.f64 kx kx))))) (*.f64 (sin.f64 th) ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 4 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) #s(literal 1 binary64))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)) (-.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) #s(literal 1 binary64)))) th)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

6 calls:

35.0ms
kx
6.0ms
ky
6.0ms
(sin.f64 kx)
6.0ms
(sin.f64 ky)
6.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Results
AccuracySegmentsBranch
42.0%2ky
41.9%2(sin.f64 ky)
37.8%2(sin.f64 kx)
38.5%2kx
39.2%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
45.6%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 23 to 31 computations (-34.8% saved)

regimes51.0ms (0.4%)

Memory
-37.9MiB live, 81.8MiB allocated
Counts
10 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (* (+ (* (* th th) -1/6) 1) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

9 calls:

16.0ms
(sin.f64 kx)
10.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
3.0ms
(sin.f64 th)
3.0ms
ky
3.0ms
th
Results
AccuracySegmentsBranch
35.0%2(sin.f64 kx)
32.9%1kx
35.3%2th
35.0%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
32.9%1(sin.f64 th)
32.9%1(sin.f64 ky)
32.9%1ky
38.0%3(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
37.7%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes58.0ms (0.4%)

Memory
27.6MiB live, 85.3MiB allocated
Counts
8 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (*.f64 th th))) th)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th)))
Calls

9 calls:

34.0ms
kx
3.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
3.0ms
(sin.f64 th)
3.0ms
(sin.f64 ky)
3.0ms
ky
Results
AccuracySegmentsBranch
20.0%2ky
20.2%2(sin.f64 ky)
20.5%2kx
20.0%2(sin.f64 th)
20.1%2(sin.f64 kx)
21.1%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
19.8%2th
23.3%2(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
22.7%2(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes3.0ms (0%)

Memory
10.1MiB live, 10.1MiB allocated
Counts
5 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 th #s(literal 1 binary64) (*.f64 th (*.f64 #s(literal -1/6 binary64) (*.f64 th th))))))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th)))
Calls

1 calls:

2.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Results
AccuracySegmentsBranch
22.7%2(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Compiler

Compiled 16 to 13 computations (18.8% saved)

regimes55.0ms (0.4%)

Memory
-18.3MiB live, 42.7MiB allocated
Accuracy

Total -0.0b remaining (-0%)

Threshold costs -0b (-0%)

Counts
2 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
Calls

9 calls:

42.0ms
(sin.f64 kx)
2.0ms
kx
1.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
1.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
1.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
8.8%1th
8.8%1(sin.f64 th)
8.8%1ky
8.8%1(sin.f64 kx)
8.8%1(sin.f64 ky)
8.8%1kx
8.8%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
8.8%1(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
8.8%1(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

bsearch48.0ms (0.3%)

Memory
4.0MiB live, 56.3MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
20.0ms
0.00116387722251395
0.042789021568725466
Samples
14.0ms112×0valid
Compiler

Compiled 474 to 375 computations (20.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 11.0ms
ival-sin: 6.0ms (54.4% of total)
ival-pow2: 2.0ms (18.1% of total)
ival-div: 1.0ms (9.1% of total)
ival-add: 1.0ms (9.1% of total)
ival-mult: 1.0ms (9.1% of total)
ival-sqrt: 1.0ms (9.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
8.6MiB live, 8.6MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
2.0ms
0.00116387722251395
0.042789021568725466
Compiler

Compiled 348 to 291 computations (16.4% saved)

bsearch1.0ms (0%)

Memory
6.3MiB live, 6.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.052552234601788976
0.06416321552782207
0.0ms
-0.10759713226591501
2.912981389329033e-304
0.0ms
-0.9999999980049327
-0.9995416155462576
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
5.9MiB live, 5.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.052552234601788976
0.06416321552782207
0.0ms
-0.10759713226591501
2.912981389329033e-304
0.0ms
-0.9999999980049327
-0.9995416155462576
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch2.0ms (0%)

Memory
7.0MiB live, 7.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.052552234601788976
0.06416321552782207
0.0ms
-0.10759713226591501
2.912981389329033e-304
0.0ms
-1.0
-0.9999999980049327
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
6.6MiB live, 6.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.052552234601788976
0.06416321552782207
0.0ms
-0.10759713226591501
2.912981389329033e-304
0.0ms
-1.0
-0.9999999980049327
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
6.7MiB live, 6.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.052552234601788976
0.06416321552782207
0.0ms
-0.10759713226591501
2.912981389329033e-304
0.0ms
-1.0
-0.9999999980049327
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
5.2MiB live, 5.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.06416321552782207
0.07410197222375689
0.0ms
-0.10759713226591501
2.912981389329033e-304
0.0ms
-1.0
-0.9999999980049327
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
4.1MiB live, 4.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.06416321552782207
0.07410197222375689
0.0ms
-0.10759713226591501
2.912981389329033e-304
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
3.8MiB live, 3.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.06416321552782207
0.07410197222375689
0.0ms
-0.10759713226591501
2.912981389329033e-304
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch12.0ms (0.1%)

Memory
-51.2MiB live, 4.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9971533403956437
0.9999999999960912
0.0ms
0.06416321552782207
0.07410197222375689
0.0ms
-0.10759713226591501
2.912981389329033e-304
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
3.0MiB live, 3.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.9026888755685803e-5
0.0011638769597473104
0.0ms
5.163763896029663e-152
3.723446806792453e-149
Compiler

Compiled 18 to 18 computations (0% saved)

bsearch41.0ms (0.3%)

Memory
29.6MiB live, 87.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
22.0ms
5.366433956894376e-7
1.4238312560242447e-6
16.0ms
1.0954603967196069e-144
9.689587979174931e-144
Samples
30.0ms176×0valid
Compiler

Compiled 734 to 562 computations (23.4% saved)

Precisions
Click to see histograms. Total time spent on operations: 25.0ms
ival-div: 9.0ms (36.6% of total)
ival-sin: 9.0ms (36.6% of total)
ival-pow2: 3.0ms (12.2% of total)
ival-add: 1.0ms (4.1% of total)
ival-mult: 1.0ms (4.1% of total)
ival-sqrt: 1.0ms (4.1% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
7.2MiB live, 7.2MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
1.0ms
5.366433956894376e-7
1.4238312560242447e-6
1.0ms
1.0954603967196069e-144
9.689587979174931e-144
Compiler

Compiled 624 to 497 computations (20.4% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.07410197222375689
0.34324308115369717
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.052552234601788976
0.06416321552782207
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.052552234601788976
0.06416321552782207
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
2.9215513995271276e-5
0.052552234601788976
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch65.0ms (0.5%)

Memory
-55.3MiB live, 27.1MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
64.0ms
4.258207817413463e-34
5.452074870968397e-33
Samples
6.0ms96×0valid
Compiler

Compiled 343 to 271 computations (21% saved)

Precisions
Click to see histograms. Total time spent on operations: 3.0ms
ival-sin: 2.0ms (64.4% of total)
ival-mult: 1.0ms (32.2% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch0.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
8.4e-323
6.71085881223867e-305
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
8.4e-323
6.71085881223867e-305
Compiler

Compiled 19 to 19 computations (0% saved)

simplify101.0ms (0.7%)

Memory
42.7MiB live, 108.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
02512388
13422388
25482388
39832388
418542388
540092388
Stop Event
node limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 ky #s(literal 7194230188746725/4611686018427387904 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7194230188746725/4611686018427387904 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1125449546879887/1125899906842624 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1125449546879887/1125899906842624 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) #s(literal 2948408144391829/29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) (if (<=.f64 (sin.f64 ky) #s(literal 7378697629483821/147573952589676412928 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 kx #s(literal 4428618266503459/3514776401986872174070733209129673327241950873673372369609965291102998109899599898686750536018664732148375711432438199315006457855854921632037902485050909261824 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 6611313076017503/4722366482869645213696 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))))
(if (<=.f64 kx #s(literal 4428618266503459/3514776401986872174070733209129673327241950873673372369609965291102998109899599898686750536018664732148375711432438199315006457855854921632037902485050909261824 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 6611313076017503/4722366482869645213696 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 3602879701896397/36028797018963968 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1549191735570757/1461501637330902918203684832716283019655932542976 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 5/50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th))))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 5/50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(if (<=.f64 ky #s(literal 7194230188746725/4611686018427387904 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7194230188746725/4611686018427387904 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (pow.f64 (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 2 binary64)) #s(literal -1 binary64))) (sin.f64 ky))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 7194230188746725/4611686018427387904 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1125449546879887/1125899906842624 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1125449546879887/1125899906842624 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (pow.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1125449546879887/1125899906842624 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1125449546879887/1125899906842624 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (pow.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal -1 binary64))))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (pow.f64 #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))) (sin.f64 ky))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 ky ky) #s(literal 1 binary64)) (sin.f64 th)) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -1 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (pow.f64 #s(approx (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))) (sin.f64 ky))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 th) ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (/.f64 #s(approx (* (sin th) (sin ky)) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1261007895663739/18014398509481984 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) #s(literal 2 binary64))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) #s(literal 2948408144391829/29484081443918291814387145163970850710288447034503440846689111720668938768688662906922865040450459121417721679927842538279457692421287442441886205089317937841010900992 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) (if (<=.f64 (sin.f64 ky) #s(literal 7378697629483821/147573952589676412928 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 kx #s(literal 4428618266503459/3514776401986872174070733209129673327241950873673372369609965291102998109899599898686750536018664732148375711432438199315006457855854921632037902485050909261824 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 6611313076017503/4722366482869645213696 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 ky))) (sin.f64 th))))
(if (<=.f64 kx #s(literal 4428618266503459/3514776401986872174070733209129673327241950873673372369609965291102998109899599898686750536018664732148375711432438199315006457855854921632037902485050909261824 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 6611313076017503/4722366482869645213696 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 #s(approx (/ 1 (- (+ (* (sin ky) (sin ky)) 1/2) (* (cos (* -2 kx)) 1/2))) (pow.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal -1 binary64)))) (sin.f64 ky))) (sin.f64 th))))
(if (<=.f64 kx #s(literal 4428618266503459/3514776401986872174070733209129673327241950873673372369609965291102998109899599898686750536018664732148375711432438199315006457855854921632037902485050909261824 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 6611313076017503/4722366482869645213696 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 3602879701896397/36028797018963968 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx)))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1080863910568919/18014398509481984 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 7378697629483821/147573952589676412928 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) #s(approx (* (sqrt (/ 1 (- 1/2 (* (cos (* -2 kx)) 1/2)))) (* (sin th) ky)) (/.f64 (*.f64 (sin.f64 th) ky) kx))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1549191735570757/1461501637330902918203684832716283019655932542976 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 5/50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 th th) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 th th) #s(literal 1 binary64)) th))))
(if (<=.f64 (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th)) #s(literal 5/50600563326827654588123836679729326762389162441035529589225339506857584891998836722990095925359281123796769466079202977847452184346448369216753349985184627480379356069141590341116726935523304085309941919618186267140501870856173174654525838912289889085202514128089692388083353653807625633046581877161501565826926935273373696 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 #s(literal -1/6 binary64) th) th #s(literal 1 binary64)) th))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))

soundness2.7s (18.7%)

Memory
-84.5MiB live, 2 651.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
02249
15949
231949
3312949
0893734
041255
069235
1227235
21532235
09657235
03811660
113701566
261371534
082071439
08395392
131665062
085944833
03171402
111341336
252361308
084061228
06664140
124573852
094023690
041212
071171
1230171
21412171
08439171
073417
0113385
1348316
22268309
09253309
Stop Event
fuel
iter limit
node limit
iter limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
node limit
iter limit
iter limit
node limit
iter limit
Compiler

Compiled 4 652 to 1 718 computations (63.1% saved)

preprocess228.0ms (1.6%)

Memory
17.9MiB live, 404.5MiB allocated
Remove

(negabs ky)

(negabs th)

(abs kx)

Compiler

Compiled 4 880 to 582 computations (88.1% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...