Toniolo and Linder, Equation (3b), real

Time bar (total: 13.0s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze477.0ms (3.7%)

Memory
-56.0MiB live, 402.1MiB 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.6s (12.5%)

Memory
52.0MiB live, 2 458.0MiB allocated
Samples
1.3s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.1s
ival-sin: 599.0ms (56.8% of total)
ival-pow2: 185.0ms (17.5% of total)
ival-div: 85.0ms (8.1% of total)
ival-mult: 66.0ms (6.3% of total)
ival-sqrt: 63.0ms (6% of total)
ival-add: 47.0ms (4.5% of total)
ival-true: 7.0ms (0.7% of total)
ival-assert: 4.0ms (0.4% of total)
Bogosity

explain187.0ms (1.4%)

Memory
-37.9MiB live, 243.9MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
100-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-rescue100
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))underflow63
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))underflow58
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))underflow10
Confusion
Predicted +Predicted -
+100
-0246
Precision
1.0
Recall
1.0
Confusion?
Predicted +Predicted MaybePredicted -
+1000
-00246
Precision?
1.0
Recall?
1.0
Freqs
test
numberfreq
0246
110
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
84.0ms512×0valid
Compiler

Compiled 152 to 43 computations (71.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 64.0ms
ival-sin: 39.0ms (60.6% of total)
ival-pow2: 12.0ms (18.7% of total)
ival-sqrt: 4.0ms (6.2% of total)
ival-div: 3.0ms (4.7% of total)
ival-mult: 3.0ms (4.7% of total)
ival-add: 2.0ms (3.1% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess212.0ms (1.6%)

Memory
22.5MiB live, 207.4MiB 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.1MiB live, 0.1MiB allocated
Compiler

Compiled 0 to 3 computations (-∞% saved)

prune1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.9%
(*.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)

simplify165.0ms (1.3%)

Memory
4.2MiB live, 99.7MiB 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

localize53.0ms (0.4%)

Memory
19.6MiB live, 62.7MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.1796875
(*.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.28744125976844204
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy0.30697250976844204
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy2.426731792162272
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Samples
45.0ms256×0valid
Compiler

Compiled 68 to 15 computations (77.9% saved)

Precisions
Click to see histograms. Total time spent on operations: 35.0ms
ival-sin: 16.0ms (45.7% of total)
ival-div: 9.0ms (25.7% of total)
ival-pow2: 5.0ms (14.3% of total)
ival-mult: 2.0ms (5.7% of total)
ival-sqrt: 2.0ms (5.7% of total)
ival-add: 1.0ms (2.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series33.0ms (0.3%)

Memory
-22.7MiB live, 22.9MiB 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 kx) #s(literal 2 binary64))
(pow.f64 (sin.f64 ky) #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
6.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 kx) 2) (pow (sin ky) 2))
6.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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 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 kx) 2) (pow (sin ky) 2))

simplify204.0ms (1.6%)

Memory
8.8MiB live, 150.8MiB 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)

rewrite237.0ms (1.8%)

Memory
-0.7MiB live, 234.5MiB 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 kx) #s(literal 2 binary64))
(pow.f64 (sin.f64 ky) #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 (*.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))))
(*.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)))))

eval79.0ms (0.6%)

Memory
-11.9MiB live, 135.6MiB allocated
Compiler

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

prune33.0ms (0.3%)

Memory
15.1MiB live, 62.1MiB allocated
Pruning

24 alts after pruning (23 fresh and 1 done)

PrunedKeptTotal
New46023483
Fresh000
Picked011
Done000
Total46024484
Accuracy
100.0%
Counts
484 → 24
Alt Table
Click to see full alt table
StatusAccuracyProgram
96.0%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
86.6%
(*.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)))))
95.4%
(*.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))))
99.5%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
75.5%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (sin.f64 kx))) (sin.f64 th))
75.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 kx))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
95.9%
(*.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))
86.6%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
86.8%
(*.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))
48.0%
(*.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))
65.8%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
87.3%
(*.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))
50.2%
(*.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))
34.7%
(*.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))
30.0%
(*.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
31.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
12.8%
(*.f64 (/.f64 (cos.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 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))
75.6%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
24.3%
(*.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))
29.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
95.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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))) (sin.f64 th))
44.5%
#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)))))))
30.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 990 to 753 computations (23.9% saved)

simplify154.0ms (1.2%)

Memory
-14.4MiB live, 176.6MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky))))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
cost-diff3
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))
cost-diff5
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))
cost-diff0
(sin.f64 ky)
cost-diff0
(*.f64 (sin.f64 ky) th)
cost-diff0
(*.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))))))
cost-diff0
#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)))))))
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
042333
072293
1123293
2262293
3656293
41589293
53790293
08128293
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
#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 (*.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 (sin.f64 ky) th)
(sin.f64 ky)
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 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky))))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky))))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))
#s(literal 1 binary64)
(*.f64 (cos.f64 ky) (cos.f64 ky))
(cos.f64 ky)
(sin.f64 th)
th
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
#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)))))))
#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 th (sin.f64 ky))))
(*.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 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 th (sin.f64 ky)))
(*.f64 (sin.f64 ky) th)
(*.f64 th (sin.f64 ky))
(sin.f64 ky)
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 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.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) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky))))))
(/.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)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky))))
(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)
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 1 binary64)
(*.f64 (cos.f64 ky) (cos.f64 ky))
(cos.f64 ky)
(sin.f64 th)
th

localize257.0ms (2%)

Memory
-42.2MiB live, 160.8MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.232753759768442
(*.f64 (cos.f64 ky) (cos.f64 ky))
accuracy0.30697250976844204
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy2.426731792162272
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))
accuracy15.311711449627193
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))
accuracy0.28744125976844204
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy2.4856200311967416
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
accuracy2.537902099481249
(*.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))))))
accuracy32.54695289536263
#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)))))))
accuracy0.1796875
(*.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.30697250976844204
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy2.426731792162272
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy31.520562581601858
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.0
(sin.f64 th)
accuracy44.68096523864222
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
accuracy0.0
(sin.f64 kx)
accuracy0.0625
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.15625
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.1796875
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Samples
121.0ms138×0valid
47.0ms50×2valid
41.0ms68×1valid
Compiler

Compiled 319 to 33 computations (89.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 128.0ms
ival-sin: 46.0ms (36% of total)
ival-cos: 19.0ms (14.8% of total)
ival-mult: 16.0ms (12.5% of total)
adjust: 11.0ms (8.6% of total)
ival-div: 9.0ms (7% of total)
ival-sqrt: 7.0ms (5.5% of total)
ival-hypot: 6.0ms (4.7% of total)
ival-pow2: 6.0ms (4.7% of total)
ival-add: 5.0ms (3.9% of total)
ival-sub: 2.0ms (1.6% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series70.0ms (0.5%)

Memory
14.3MiB live, 57.1MiB allocated
Counts
22 → 98
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))))
#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 (*.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 (sin.f64 ky) th)
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.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 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(*.f64 (cos.f64 ky) (cos.f64 ky))
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))))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (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 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(sqrt (- 1 (pow (cos ky) 2)))
(+ (sqrt (- 1 (pow (cos ky) 2))) (* 1/2 (* (pow kx 2) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))))
(+ (sqrt (- 1 (pow (cos ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (- 1 (pow (cos ky) 2)))))) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))) (* 1/2 (sqrt (/ 1 (- 1 (pow (cos ky) 2))))))))
(+ (sqrt (- 1 (pow (cos ky) 2))) (* (pow kx 2) (+ (* 1/2 (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (+ 1/3 (* 1/4 (/ 1 (- 1 (pow (cos ky) 2))))) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))) (* 1/2 (* (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (- 1 (pow (cos ky) 2))))) (- 1 (pow (cos ky) 2)))))) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))
(+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (sin th))) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))))
(+ (* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (* (sin ky) (sin th)) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))))) (sqrt (- 1 (pow (cos ky) 2))))))))
(+ (* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (* (sin ky) (sin th)) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))) (- 1 (pow (cos ky) 2)))) (+ (* 2/45 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (+ (* 2/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))) (/ 1 (pow (- 1 (pow (cos ky) 2)) 4)))))))) (sqrt (- 1 (pow (cos ky) 2))))) (* 1/2 (* (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))))) (sqrt (- 1 (pow (cos ky) 2))))))))))
(* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))
(+ (* -1/2 (* (* (pow kx 2) (sin ky)) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))))
(+ (* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))))) (sqrt (- 1 (pow (cos ky) 2))))))))
(+ (* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))) (- 1 (pow (cos ky) 2)))) (+ (* 2/45 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (+ (* 2/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))) (/ 1 (pow (- 1 (pow (cos ky) 2)) 4))))))) (sqrt (- 1 (pow (cos ky) 2))))) (* 1/2 (* (* (sin ky) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (sqrt (- 1 (pow (cos ky) 2))))))))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(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))))
(/ 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)))
(* (* (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)))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))
(* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))
(sin kx)
(pow (sin kx) 2)
(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) (* 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 th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (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 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(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))))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 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/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ 1 (* -1 (pow ky 2)))
(+ 1 (* (pow ky 2) (- (* 1/3 (pow ky 2)) 1)))
(+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/3 (* -2/45 (pow ky 2)))) 1)))
(* th (sin ky))
(- 1 (pow (cos ky) 2))
(pow (sin ky) 2)
(pow (cos 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 (+ 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 (pow (sin kx) 2)) (pow (cos ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2))))))))))))
Calls

9 calls:

TimeVariablePointExpression
33.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))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (- 1 (* (cos ky) (cos ky))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2) (* (cos ky) (cos ky)))
5.0ms
kx
@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))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (- 1 (* (cos ky) (cos ky))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2) (* (cos ky) (cos ky)))
5.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))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (- 1 (* (cos ky) (cos ky))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2) (* (cos ky) (cos ky)))
4.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))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (- 1 (* (cos ky) (cos ky))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2) (* (cos ky) (cos ky)))
4.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))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (* (sin ky) th) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (- 1 (* (cos ky) (cos ky))) (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin kx) (pow (sin ky) 2) (pow (sin kx) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow (sin ky) 2) (* (cos ky) (cos ky)))

simplify236.0ms (1.8%)

Memory
10.8MiB live, 151.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
06013296
122043028
085982875
Stop Event
iter limit
node limit
Counts
98 → 95
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))))))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (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 (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(sqrt (- 1 (pow (cos ky) 2)))
(+ (sqrt (- 1 (pow (cos ky) 2))) (* 1/2 (* (pow kx 2) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))))
(+ (sqrt (- 1 (pow (cos ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (- 1 (pow (cos ky) 2)))))) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))) (* 1/2 (sqrt (/ 1 (- 1 (pow (cos ky) 2))))))))
(+ (sqrt (- 1 (pow (cos ky) 2))) (* (pow kx 2) (+ (* 1/2 (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (+ 1/3 (* 1/4 (/ 1 (- 1 (pow (cos ky) 2))))) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))) (* 1/2 (* (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (- 1 (pow (cos ky) 2))))) (- 1 (pow (cos ky) 2)))))) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))))))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))
(+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (sin th))) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))))
(+ (* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (* (sin ky) (sin th)) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))))) (sqrt (- 1 (pow (cos ky) 2))))))))
(+ (* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (* (sin ky) (sin th)) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))) (- 1 (pow (cos ky) 2)))) (+ (* 2/45 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (+ (* 2/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))) (/ 1 (pow (- 1 (pow (cos ky) 2)) 4)))))))) (sqrt (- 1 (pow (cos ky) 2))))) (* 1/2 (* (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))))) (sqrt (- 1 (pow (cos ky) 2))))))))))
(* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))
(+ (* -1/2 (* (* (pow kx 2) (sin ky)) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))))
(+ (* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))))) (sqrt (- 1 (pow (cos ky) 2))))))))
(+ (* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))) (- 1 (pow (cos ky) 2)))) (+ (* 2/45 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (+ (* 2/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))) (/ 1 (pow (- 1 (pow (cos ky) 2)) 4))))))) (sqrt (- 1 (pow (cos ky) 2))))) (* 1/2 (* (* (sin ky) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (sqrt (- 1 (pow (cos ky) 2))))))))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(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))))
(/ 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)))
(* (* (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)))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sqrt (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))
(* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))
(sin kx)
(pow (sin kx) 2)
(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) (* 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 th) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (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 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(* ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(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))))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 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/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ 1 (* -1 (pow ky 2)))
(+ 1 (* (pow ky 2) (- (* 1/3 (pow ky 2)) 1)))
(+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/3 (* -2/45 (pow ky 2)))) 1)))
(* th (sin ky))
(- 1 (pow (cos ky) 2))
(pow (sin ky) 2)
(pow (cos 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 (+ 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 (pow (sin kx) 2)) (pow (cos ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos 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 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 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 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (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)) (*.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 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (-.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)))) (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))
th
(+ th (* -1/2 (/ (* (pow kx 2) th) (pow (sin ky) 2))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* th (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 (*.f64 (*.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (+.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))))) (*.f64 kx kx)))) (*.f64 kx kx) th)
(+ th (* (pow kx 2) (+ (* -1/2 (/ th (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* th (* (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 (* th (* (pow (sin ky) 2) (+ (* 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 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (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)))))) (*.f64 kx kx)) (*.f64 (*.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (+.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))))))) (*.f64 kx kx) (*.f64 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.f64 kx kx) th)
(sqrt (- 1 (pow (cos ky) 2)))
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (sqrt (- 1 (pow (cos ky) 2))) (* 1/2 (* (pow kx 2) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (sqrt (- 1 (pow (cos ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (- 1 (pow (cos ky) 2)))))) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))) (* 1/2 (sqrt (/ 1 (- 1 (pow (cos ky) 2))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (fma.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)) (*.f64 kx kx) #s(literal 1/2 binary64))) (*.f64 kx kx) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (sqrt (- 1 (pow (cos ky) 2))) (* (pow kx 2) (+ (* 1/2 (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (+ 1/3 (* 1/4 (/ 1 (- 1 (pow (cos ky) 2))))) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))) (* 1/2 (* (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (- 1 (pow (cos ky) 2))))) (- 1 (pow (cos ky) 2)))))) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (-.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)))) (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)))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/2 binary64))) (*.f64 kx kx) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky))
(+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (sin th))) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky) (*.f64 (*.f64 (*.f64 kx kx) (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (sin.f64 ky))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))))))
(+ (* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (* (sin ky) (sin th)) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))))) (sqrt (- 1 (pow (cos ky) 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)))) (sin.f64 th)) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 kx kx) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky))))) (*.f64 kx kx) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(+ (* (* (sin ky) (sin th)) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (* (sin ky) (sin th)) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))) (- 1 (pow (cos ky) 2)))) (+ (* 2/45 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (+ (* 2/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))) (/ 1 (pow (- 1 (pow (cos ky) 2)) 4)))))))) (sqrt (- 1 (pow (cos ky) 2))))) (* 1/2 (* (* (sin ky) (* (sin th) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))))) (sqrt (- 1 (pow (cos ky) 2))))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))))) (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64)))) (sin.f64 th)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64))))) (sin.f64 th)) (sin.f64 ky))))) (*.f64 kx kx))) (*.f64 kx kx) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2)))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))
(+ (* -1/2 (* (* (pow kx 2) (sin ky)) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))))
(fma.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)))) (sin.f64 ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky)))
(+ (* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))))) (sqrt (- 1 (pow (cos ky) 2))))))))
(fma.f64 (*.f64 #s(literal -1/2 binary64) (-.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)))) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 kx kx) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64)))) (sin.f64 ky))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky)))
(+ (* (sin ky) (sqrt (/ 1 (- 1 (pow (cos ky) 2))))) (* (pow kx 2) (+ (* -1/2 (* (sin ky) (sqrt (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3)))) (- 1 (pow (cos ky) 2)))) (+ (* 2/45 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (+ (* 2/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))) (/ 1 (pow (- 1 (pow (cos ky) 2)) 4))))))) (sqrt (- 1 (pow (cos ky) 2))))) (* 1/2 (* (* (sin ky) (+ (* 1/3 (/ 1 (pow (- 1 (pow (cos ky) 2)) 2))) (* 3/4 (/ 1 (pow (- 1 (pow (cos ky) 2)) 3))))) (sqrt (- 1 (pow (cos ky) 2))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (*.f64 #s(literal 1/2 binary64) (sin.f64 ky)) (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64)))) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 3/4 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64) (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 4 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 2 binary64))))) (sin.f64 ky))))) (*.f64 kx kx) (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky)))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 kx kx)) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) kx)
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(*.f64 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(*.f64 (*.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)) 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 (*.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) #s(literal 1 binary64)) (*.f64 kx kx))
(/ 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 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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)))
(* (* (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))
(* (* th (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))))) (*.f64 (sin.f64 ky) th))
(sqrt (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos 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 (- (+ 1 (pow (sin kx) 2)) (pow (cos 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))
(sin kx)
(sin.f64 kx)
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/ (* 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 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (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))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (sin.f64 th)) (+.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)))) (fma.f64 #s(literal -1/240 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (*.f64 #s(literal -1/5040 binary64) (sin.f64 th)) (sin.f64 kx))))) (*.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 (*.f64 (neg.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))) (/.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))))
(*.f64 (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)))) (*.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/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))))
(*.f64 (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)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) 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 (*.f64 ky ky) #s(literal 1/120 binary64)) #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))))
(fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)
(+ (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 (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)) (*.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 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (-.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)))) (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 th) (sin kx))
(*.f64 ky (/.f64 th (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(*.f64 (fma.f64 (*.f64 (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64))) ky) ky (/.f64 th (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 th (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)))) (fma.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64) (*.f64 (/.f64 th (sin.f64 kx)) #s(literal 1/120 binary64)))) (*.f64 ky ky) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64)))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (+ (* -1/6 (/ th (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ th (sin kx))) (+ (* 1/12 (/ th (pow (sin kx) 3))) (+ (* 1/2 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* th (* (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 (* th (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ th (pow (sin kx) 3))) (* -1/5040 (/ th (sin kx)))))))))))))) (/ th (sin kx))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 th (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))))) (fma.f64 (*.f64 #s(literal -1/12 binary64) (*.f64 th (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)))) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/5040 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/240 binary64))))) (*.f64 ky ky) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 th (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 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64))))) (*.f64 ky ky) (fma.f64 (/.f64 th (sin.f64 kx)) #s(literal -1/6 binary64) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64)))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky th)
(*.f64 th ky)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) th) ky)
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(*.f64 (fma.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal 1/120 binary64) #s(literal -1/6 binary64))) (*.f64 ky ky) th) ky)
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* (pow ky 2) (+ (* -1/5040 (* (pow ky 2) th)) (* 1/120 th)))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (*.f64 th (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))) ky) ky (*.f64 #s(literal -1/6 binary64) th)) (*.f64 ky ky) th) ky)
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(*.f64 (*.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)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky))
(/ 1 (sin kx))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 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 kx)) (*.f64 ky ky)) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 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/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(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 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 kx)) (*.f64 ky ky)) (*.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 kx)))) (*.f64 ky ky)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(+ 1 (* -1 (pow ky 2)))
(fma.f64 (neg.f64 ky) ky #s(literal 1 binary64))
(+ 1 (* (pow ky 2) (- (* 1/3 (pow ky 2)) 1)))
(fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/3 binary64)) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1 binary64))
(+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/3 (* -2/45 (pow ky 2)))) 1)))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -2/45 binary64) (*.f64 ky ky) #s(literal 1/3 binary64)) ky) ky) #s(literal 1 binary64)) (*.f64 ky ky) #s(literal 1 binary64))
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(- 1 (pow (cos ky) 2))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow (cos ky) 2)
(pow.f64 (cos.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 (*.f64 (sin.f64 ky) th) 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 (*.f64 (sin.f64 ky) th) 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 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 th th) (*.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))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (sin.f64 ky) 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 th (*.f64 th th)) (-.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)
(* (* th (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos 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 ky) th))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos 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 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos 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 (*.f64 (sin.f64 ky) th) 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 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (- (+ 1 (pow (sin kx) 2)) (pow (cos 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 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 th th) (*.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))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th)))))) th)

rewrite251.0ms (1.9%)

Memory
-31.9MiB live, 159.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
042243
072190
1226190
21611190
08949190
Stop Event
iter limit
node limit
iter limit
Counts
22 → 581
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))))
#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 (*.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 (sin.f64 ky) th)
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))
(-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.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 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(*.f64 (cos.f64 ky) (cos.f64 ky))
Outputs
(*.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 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (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)))))
(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 (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/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 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 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) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #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)))
(/.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)))) (cos.f64 ky))
(sin.f64 (acos.f64 (neg.f64 (neg.f64 (cos.f64 ky)))))
(sin.f64 (acos.f64 (neg.f64 (cos.f64 ky))))
(sin.f64 (acos.f64 (cos.f64 ky)))
(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))
(cos.f64 (asin.f64 (neg.f64 (neg.f64 (cos.f64 ky)))))
(cos.f64 (asin.f64 (neg.f64 (cos.f64 ky))))
(cos.f64 (asin.f64 (cos.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 (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (+.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (cos.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) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) #s(literal 2 binary64) (*.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) #s(literal 2 binary64) (*.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) (sqrt.f64 (*.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #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 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.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 (-.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 (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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #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 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 (* (/ (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)))))))
(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))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
(*.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 ky)) th)
(*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (*.f64 th (sin.f64 ky)))
(*.f64 (*.f64 th (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 th (*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (sin.f64 ky) (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 th (sin.f64 ky))) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 th (sin.f64 ky))
(*.f64 (sin.f64 ky) th)
(*.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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (+.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(literal 1 binary64)) (pow.f64 (cos.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) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) #s(literal 2 binary64) (*.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) #s(literal 2 binary64) (*.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))) (sqrt.f64 (*.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #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 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))))) (sqrt.f64 (*.f64 #s(literal 2 binary64) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.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 (-.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 (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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #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 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))))
(*.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 (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 (fabs.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))))) (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 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (fabs.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))))) (fabs.f64 (neg.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))))) (fabs.f64 (neg.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 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) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))) (fabs.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64))))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (fabs.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 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 (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)))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 ky (PI.f64)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (+.f64 (+.f64 ky (PI.f64)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 ky) (+.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 (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 #s(literal 2 binary64) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 ky) #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 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 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 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))) (neg.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (neg.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 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) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 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))))
(fma.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky) #s(literal 1 binary64))
(fma.f64 (cos.f64 ky) (neg.f64 (cos.f64 ky)) #s(literal 1 binary64))
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))
(-.f64 (pow.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64))))
(-.f64 (pow.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 6 binary64)) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))
(-.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)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 ky))) (cos.f64 ky)))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64))) (pow.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) #s(literal -1 binary64))))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (cos.f64 ky) #s(literal 6 binary64)) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (pow.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(literal -1 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 (*.f64 (neg.f64 (neg.f64 (cos.f64 ky))) (cos.f64 ky)) #s(literal 1 binary64)))
(fabs.f64 (-.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(literal 1 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 (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(+.f64 #s(literal 0 binary64) (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) ky))))
(+.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 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 ky))) (neg.f64 (cos.f64 ky))))
(+.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(*.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 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (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)))))
(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 (sqrt.f64 (sin.f64 kx))) (neg.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) (fabs.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #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 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 (sqrt.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)))) (sqrt.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (sqrt.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)))) (sqrt.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 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))
(sin.f64 kx)
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (neg.f64 (sin.f64 kx))))
(fabs.f64 (neg.f64 (sin.f64 kx)))
(fabs.f64 (sin.f64 kx))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 kx))) (sinh.f64 (log.f64 (sin.f64 kx))))
#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 (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 (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 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #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) 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 (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) 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 #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))))
(*.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 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 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 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 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 (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) #s(literal -1 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 (sqrt.f64 (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) #s(literal -1 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)))))
(*.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 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) #s(literal -1 binary64)) #s(literal 1/2 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 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) #s(literal -1 binary64)) #s(literal 1/2 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)))))
(*.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 (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))
(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 #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 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #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 (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 (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 (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 (fabs.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))))) (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 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (fabs.f64 (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))))) (fabs.f64 (neg.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)))))
(/.f64 (fabs.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))))) (fabs.f64 (neg.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 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) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))) (fabs.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64))))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (fabs.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 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 (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)))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 ky (PI.f64)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (sin.f64 (+.f64 (+.f64 ky (PI.f64)) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 ky) (+.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 (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 #s(literal 2 binary64) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 ky) #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 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 3 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 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))) (neg.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64)))) (neg.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 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) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 6 binary64))) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 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))))
(fma.f64 (neg.f64 (cos.f64 ky)) (cos.f64 ky) #s(literal 1 binary64))
(fma.f64 (cos.f64 ky) (neg.f64 (cos.f64 ky)) #s(literal 1 binary64))
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))
(-.f64 (pow.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64))))
(-.f64 (pow.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 6 binary64)) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))
(-.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)))
(-.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 ky))) (cos.f64 ky)))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)) (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64))) (pow.f64 (fma.f64 (cos.f64 ky) (cos.f64 ky) #s(literal 1 binary64)) #s(literal -1 binary64))))
(fabs.f64 (-.f64 (/.f64 (pow.f64 (cos.f64 ky) #s(literal 6 binary64)) (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (pow.f64 (+.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 4 binary64))) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(literal -1 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 (*.f64 (neg.f64 (neg.f64 (cos.f64 ky))) (cos.f64 ky)) #s(literal 1 binary64)))
(fabs.f64 (-.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(literal 1 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 (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))
(+.f64 #s(literal 0 binary64) (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) ky))))
(+.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 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 (cos.f64 ky))) (neg.f64 (cos.f64 ky))))
(+.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(*.f64 (neg.f64 (neg.f64 (neg.f64 (cos.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (cos.f64 ky)))))
(*.f64 (fabs.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 ky)))) (cos.f64 ky))
(*.f64 (exp.f64 (log.f64 (cos.f64 ky))) (exp.f64 (log.f64 (cos.f64 ky))))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (cos.f64 ky))) (neg.f64 (cos.f64 ky)))
(*.f64 (neg.f64 (neg.f64 (cos.f64 ky))) (neg.f64 (neg.f64 (cos.f64 ky))))
(*.f64 (neg.f64 (cos.f64 ky)) (neg.f64 (cos.f64 ky)))
(*.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 (cos.f64 ky) (cos.f64 ky))
(*.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(pow.f64 (exp.f64 (log.f64 (cos.f64 ky))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (neg.f64 (cos.f64 ky))) #s(literal 2 binary64))
(pow.f64 (neg.f64 (cos.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (cos.f64 ky) #s(literal 2 binary64))
(/.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64) #s(literal 2 binary64)) #s(literal 4 binary64))
(/.f64 (fabs.f64 (*.f64 #s(literal 1 binary64) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1 binary64)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (fabs.f64 (+.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 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)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(/.f64 (fabs.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (fabs.f64 (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #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) ky)) #s(literal 3 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 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1 binary64)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky))))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 ky) ky)) (cos.f64 (-.f64 (neg.f64 ky) ky)))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (+.f64 (cos.f64 (+.f64 ky (neg.f64 ky))) (cos.f64 (-.f64 ky (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (fabs.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1 binary64))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 (neg.f64 ky) (PI.f64)))) (sin.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 ky (PI.f64)))) (sin.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 ky (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (sin.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64)))) (sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 ky (PI.f64)))) (sin.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (+.f64 ky (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.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) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (neg.f64 ky)))) (sin.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 (neg.f64 ky))))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 ky))) (sin.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (neg.f64 ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) ky)) (sin.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) ky))) #s(literal 2 binary64))
(/.f64 (+.f64 (sin.f64 (-.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (neg.f64 (neg.f64 ky)))) (sin.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (neg.f64 (neg.f64 ky))))) #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 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)))) (cos.f64 (+.f64 (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)) (+.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)) (neg.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) (cos.f64 (+.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (PI.f64)) (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 (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) #s(literal 2 binary64)) ky))) (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.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) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 binary64)))))) #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 ky (PI.f64)))) (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 ky (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 (neg.f64 ky) (PI.f64)) (+.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 ky (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (-.f64 (+.f64 ky (PI.f64)) (+.f64 (neg.f64 ky) (PI.f64))))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (+.f64 ky (PI.f64)) (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))))) (cos.f64 (-.f64 (+.f64 ky (PI.f64)) (+.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))) (+.f64 (neg.f64 ky) (PI.f64)))) (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 (neg.f64 ky) (PI.f64))))) #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 ky (PI.f64)))) (cos.f64 (-.f64 (+.f64 (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky) (/.f64 (PI.f64) #s(literal 2 binary64))) (+.f64 ky (PI.f64))))) #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 (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 ky))) (cos.f64 (-.f64 (neg.f64 (neg.f64 ky)) (neg.f64 ky)))) #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 ky) (neg.f64 (neg.f64 ky)))) (cos.f64 (-.f64 (neg.f64 ky) (neg.f64 (neg.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 #s(literal 1 binary64) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1 binary64))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (+.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #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 (sin.f64 ky) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #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) ky)) #s(literal 3 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 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1 binary64))) #s(literal -2 binary64))
(/.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1 binary64)) #s(literal 2 binary64))
(/.f64 (-.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 (neg.f64 ky) ky)) (cos.f64 (-.f64 (neg.f64 ky) ky))) #s(literal 2 binary64))
(/.f64 (+.f64 (cos.f64 (+.f64 ky (neg.f64 ky))) (cos.f64 (-.f64 ky (neg.f64 ky)))) #s(literal 2 binary64))
(neg.f64 (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64) #s(literal 1/2 binary64))
(fma.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))
(sqrt.f64 (pow.f64 (cos.f64 ky) #s(literal 4 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (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) (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) ky))))
(-.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 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fabs.f64 (-.f64 (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) #s(literal 0 binary64)))
(fabs.f64 (-.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) (+.f64 (/.f64 (PI.f64) #s(literal 2 binary64)) ky)))) #s(literal 1/2 binary64)))
(fabs.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64)))
(fabs.f64 (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(fabs.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (neg.f64 (cos.f64 ky))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(+.f64 (cosh.f64 (log.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))) (sinh.f64 (log.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))))
(+.f64 (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(+.f64 #s(literal 0 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(+.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #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 (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 (/.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 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 1 binary64)))
(+.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #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)))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (sin.f64 ky))))
(+.f64 #s(literal 1 binary64) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 ky)))
(+.f64 #s(literal 1 binary64) (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 ky))))

eval159.0ms (1.2%)

Memory
22.3MiB live, 206.3MiB allocated
Compiler

Compiled 26 726 to 4 322 computations (83.8% saved)

prune69.0ms (0.5%)

Memory
-8.6MiB live, 145.2MiB allocated
Pruning

50 alts after pruning (47 fresh and 3 done)

PrunedKeptTotal
New82538863
Fresh9918
Picked235
Done101
Total83750887
Accuracy
100.0%
Counts
887 → 50
Alt Table
Click to see full alt table
StatusAccuracyProgram
45.9%
(/.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)))))
75.5%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
46.3%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 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))))) (sin.f64 th))
37.6%
(*.f64 (/.f64 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
95.4%
(*.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))))
99.5%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
75.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (sin.f64 kx))) (sin.f64 th))
88.5%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 (acos.f64 (cos.f64 ky))) (sin.f64 kx))) (sin.f64 th))
89.3%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64))))) (sin.f64 th))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
48.8%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
48.8%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
48.7%
(*.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)))
51.8%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
51.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
51.7%
(*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
78.3%
(*.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))) (sin.f64 th))
78.0%
(*.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))
86.8%
(*.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))
22.4%
(*.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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
33.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
87.3%
(*.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))
78.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))) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
39.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
27.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 ky ky))))) (sin.f64 th))
31.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
40.3%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
45.7%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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))
46.1%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
75.6%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
48.0%
(*.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))))))
24.3%
(*.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))
29.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
95.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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))) (sin.f64 th))
40.1%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
45.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
48.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
45.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
30.4%
#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 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
41.5%
#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 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)))))))
44.5%
#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)))))))
20.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
14.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
30.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
12.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
13.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
16.0%
#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)))
16.0%
#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)))
40.1%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
28.1%
#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 564 to 1 874 computations (26.9% saved)

simplify141.0ms (1.1%)

Memory
41.0MiB live, 172.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sqrt.f64 (sin.f64 ky))
cost-diff0
(/.f64 (pow.f64 (sqrt.f64 (sin.f64 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)))))
cost-diff0
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 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))))) (sin.f64 th))
cost-diff3
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
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
(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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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
(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
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
cost-diff0
(sin.f64 th)
cost-diff0
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
cost-diff0
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046386
079378
1140372
2311372
3742366
41646366
53499366
66796366
08422355
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.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 ky)
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 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 (-.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 ky ky))))) (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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.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 ky ky)))
(-.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
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(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 (pow.f64 (sqrt.f64 (sin.f64 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))))) (sin.f64 th))
(/.f64 (pow.f64 (sqrt.f64 (sin.f64 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)))))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(sqrt.f64 (sin.f64 ky))
(sin.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 (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(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
Outputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (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 ky)
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) (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 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (fma.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (fma.f64 #s(literal -1/2 binary64) (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)))
(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
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(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 (pow.f64 (sqrt.f64 (sin.f64 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))))) (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) (*.f64 ky ky)))))
(/.f64 (pow.f64 (sqrt.f64 (sin.f64 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 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(sin.f64 ky)
(sqrt.f64 (sin.f64 ky))
(sin.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))))
(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(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th

localize239.0ms (1.8%)

Memory
-20.7MiB live, 452.9MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.2265625
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy0.39681625976844204
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
accuracy2.411106792162272
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy17.010079945311023
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.06640625
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
accuracy0.12109375
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.1328125
(*.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)))
accuracy25.80787283471988
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
accuracy0.1328125
(*.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 ky ky))))) (sin.f64 th))
accuracy2.411106792162272
(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 ky ky))))
accuracy11.059209163724422
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
accuracy17.010079945311023
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.03125
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
accuracy0.06640625
(fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64))
accuracy25.80787283471988
#s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))
accuracy29.814721324874387
#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.0
(sin.f64 kx)
accuracy0.02734375
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.189785009768442
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.23828125
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
Samples
68.0ms59×1valid
52.0ms61×0invalid
43.0ms105×0valid
29.0ms31×2valid
Compiler

Compiled 355 to 40 computations (88.7% saved)

Precisions
Click to see histograms. Total time spent on operations: 159.0ms
ival-sin: 49.0ms (30.8% of total)
ival-mult: 32.0ms (20.1% of total)
ival-cos: 23.0ms (14.4% of total)
ival-div: 11.0ms (6.9% of total)
ival-sqrt: 11.0ms (6.9% of total)
ival-pow2: 9.0ms (5.7% of total)
adjust: 6.0ms (3.8% of total)
ival-hypot: 5.0ms (3.1% of total)
const: 5.0ms (3.1% of total)
ival-add: 5.0ms (3.1% of total)
ival-sub: 2.0ms (1.3% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series49.0ms (0.4%)

Memory
10.9MiB live, 101.8MiB allocated
Counts
23 → 97
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(*.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 #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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
(*.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)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 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))))) (sin.f64 th))
(/.f64 (pow.f64 (sqrt.f64 (sin.f64 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)))))
(sqrt.f64 (sin.f64 ky))
(sin.f64 kx)
#s(approx (pow (sin ky) 2) (*.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))) #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))))
(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))))))))))))
(/ (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 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))))
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))))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (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)))))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(sqrt (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))
(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))))
(/ (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)))
(+ (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))))))))))))))))))))
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))))
(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))))))))
(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)))))))))))))
(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 (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)))))))))))
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)))
(* (* 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))))))))))))))
(* -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
12.0ms
kx
@inf
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (+ (* (* 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) (- 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)))) (sin ky) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sqrt (sin ky)) 2) (* (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (sin ky)) (sin kx) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))
7.0ms
ky
@0
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (+ (* (* 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) (- 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)))) (sin ky) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sqrt (sin ky)) 2) (* (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (sin ky)) (sin kx) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))
5.0ms
ky
@inf
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (+ (* (* 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) (- 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)))) (sin ky) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sqrt (sin ky)) 2) (* (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (sin ky)) (sin kx) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))
4.0ms
ky
@-inf
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (+ (* (* 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) (- 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)))) (sin ky) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sqrt (sin ky)) 2) (* (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (sin ky)) (sin kx) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))
4.0ms
kx
@-inf
((* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (* (+ (* (* 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) (- 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)))) (sin ky) (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (pow (sqrt (sin ky)) 2) (* (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/ (pow (sqrt (sin ky)) 2) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sqrt (sin ky)) (sin kx) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (pow (sin kx) 2))

simplify210.0ms (1.6%)

Memory
0.6MiB live, 301.1MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05913599
121503361
092523207
Stop Event
iter limit
node limit
Counts
97 → 94
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))))))))))))
(/ (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 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))))
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))))))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(* (* (sin ky) (sin th)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (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)))))))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(sin kx)
(sqrt (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))
(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))))
(/ (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)))
(+ (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))))))))))))))))))))
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))))
(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))))))))
(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)))))))))))))
(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 (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)))))))))))
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)))
(* (* 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))))))))))))))
(* -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 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))
(/ (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 (*.f64 kx kx) #s(literal -1/2 binary64)) (/.f64 (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.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 (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)) (*.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 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (-.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)))) (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 (*.f64 (fma.f64 #s(literal -1/3 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx) kx)
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(*.f64 (*.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)) 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 (*.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) #s(literal 1 binary64)) (*.f64 kx kx))
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 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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))
kx
(* kx (+ 1 (* -1/6 (pow kx 2))))
(*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* 1/120 (pow kx 2)) 1/6))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 kx kx)) #s(literal 1/6 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) kx)
(* kx (+ 1 (* (pow kx 2) (- (* (pow kx 2) (+ 1/120 (* -1/5040 (pow kx 2)))) 1/6))))
(fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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 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))
(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))
(* (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))
(sin kx)
(sin.f64 kx)
(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))))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(/ (* 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))))
(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 #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 (*.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))) (* (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 (/.f64 (sin.f64 th) (sin.f64 kx)) #s(literal 1/120 binary64) (fma.f64 (fma.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 kx)) (sin.f64 th)) (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))))) (fma.f64 (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 kx)) (sin.f64 th)) (+.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)))) (fma.f64 #s(literal -1/240 binary64) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 (*.f64 #s(literal -1/5040 binary64) (sin.f64 th)) (sin.f64 kx))))) (*.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 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
(/ (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 (*.f64 ky ky) #s(literal -1/2 binary64)) (/.f64 (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)))
(+ (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 (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)) (*.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 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (-.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)))) (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 (pow.f64 ky #s(literal 3 binary64)) (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 (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 (pow.f64 ky #s(literal 3 binary64)) (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))))) #s(literal 1/120 binary64)) (sin.f64 th) (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 (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 (/.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 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)))))))) (*.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 (pow.f64 ky #s(literal 3 binary64)) (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 (*.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 (*.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)))))) (sin.f64 th) (*.f64 (*.f64 #s(literal -1/12 binary64) (sin.f64 th)) (+.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 (*.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 (*.f64 (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 (/.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 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 (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 (pow.f64 ky #s(literal 3 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/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 (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 (pow.f64 ky #s(literal 3 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/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 #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))))) (+.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 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)))) (*.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 (pow.f64 ky #s(literal 3 binary64)) (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 #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))))) (+.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 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)))) (*.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
(* 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 (*.f64 ky ky) #s(literal 1/120 binary64)) #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 (*.f64 ky ky) #s(literal -1/5040 binary64) #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))))
(*.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 (pow.f64 ky #s(literal 3 binary64)) (-.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)))) (*.f64 ky (/.f64 #s(literal 1 binary64) (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 (*.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)))) (*.f64 ky (/.f64 #s(literal 1 binary64) (sin.f64 kx))))
(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 (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) ky))) #s(literal 1/1440 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))
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky)
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(*.f64 (*.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)) 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 (*.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) #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 (*.f64 ky ky) #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/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 (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) #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 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (-.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))))) (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)))))
(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 (*.f64 (sin.f64 ky) th) 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))))))))))
(fma.f64 (pow.f64 th #s(literal 3 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) (*.f64 (*.f64 (sin.f64 ky) th) th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (*.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 (+ (* (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 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 th th) (*.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))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (sin.f64 ky) 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 (*.f64 th th) (*.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))))) (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))
(* (* 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 (*.f64 (sin.f64 ky) th) 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))))))))))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) (*.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 (*.f64 (sin.f64 ky) th) th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)))) (*.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 (+ (* (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 (*.f64 (sin.f64 ky) th) th) (sin.f64 ky)) (*.f64 (*.f64 (*.f64 th th) (*.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))))) (fma.f64 #s(literal 1/120 binary64) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (sin.f64 ky) th) th)))))) 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)))
(* -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 (neg.f64 (-.f64 #s(literal 1/6 binary64) (/.f64 #s(literal 1 binary64) (*.f64 th th)))) (pow.f64 th #s(literal 3 binary64)))

rewrite173.0ms (1.3%)

Memory
-13.4MiB live, 177.5MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
046259
079229
1270229
21665229
08110229
Stop Event
iter limit
node limit
iter limit
Counts
23 → 447
Calls
Call 1
Inputs
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sin.f64 th)
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(*.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 #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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
(*.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)))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 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))))) (sin.f64 th))
(/.f64 (pow.f64 (sqrt.f64 (sin.f64 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)))))
(sqrt.f64 (sin.f64 ky))
(sin.f64 kx)
#s(approx (pow (sin ky) 2) (*.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))) #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))))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.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 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (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 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (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 ky) (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 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)))))
(sin.f64 th)
(*.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 (-.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/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 (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 (-.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 (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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #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 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(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 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (neg.f64 (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)) (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)) (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 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 (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 (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 (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 (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 (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 (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 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)))
(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 (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 (*.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 (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 (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 (*.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 (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 (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/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)))
(-.f64 #s(literal 1 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 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 (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 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 (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 (*.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 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 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (sin.f64 ky) (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 (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 (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(*.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 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1/2 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 (exp.f64 #s(literal 2 binary64)) (log.f64 (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 (/.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #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 (/.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 (*.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 (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 (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(*.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)))
(*.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 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64))))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1/2 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 (exp.f64 #s(literal 2 binary64)) (log.f64 (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 (/.f64 (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #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 (/.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 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 (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 (*.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 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 ky) (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (/.f64 (sin.f64 ky) (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 (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 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 1 binary64)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 1 binary64)))
(*.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 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (sin.f64 ky)))
(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 (log.f64 (sqrt.f64 (sin.f64 ky))))
(+.f64 (cosh.f64 (log.f64 (sqrt.f64 (sin.f64 ky)))) (sinh.f64 (log.f64 (sqrt.f64 (sin.f64 ky)))))
(*.f64 (neg.f64 (sqrt.f64 (sin.f64 kx))) (neg.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (fabs.f64 (sqrt.f64 (sin.f64 kx))) (fabs.f64 (sqrt.f64 (sin.f64 kx))))
(*.f64 (sqrt.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64))) (sqrt.f64 #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (sqrt.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(*.f64 (sqrt.f64 (neg.f64 (sin.f64 kx))) (sqrt.f64 (neg.f64 (sin.f64 kx))))
(*.f64 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (sin.f64 kx)))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #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 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 (sqrt.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)))) (sqrt.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 (sqrt.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))))) (sqrt.f64 (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))))
(/.f64 (sqrt.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))))) (sqrt.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 (sqrt.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal -2 binary64)))
(/.f64 (sqrt.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 (cos.f64 kx)))
(/.f64 (sqrt.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)))) (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 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 #s(literal 2 binary64)))
(sin.f64 kx)
(sqrt.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fabs.f64 (neg.f64 (neg.f64 (sin.f64 kx))))
(fabs.f64 (neg.f64 (sin.f64 kx)))
(fabs.f64 (sin.f64 kx))
(exp.f64 (/.f64 (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 2 binary64)))
(exp.f64 (log.f64 (sin.f64 kx)))
(+.f64 (cosh.f64 (log.f64 (sin.f64 kx))) (sinh.f64 (log.f64 (sin.f64 kx))))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.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 #s(literal 1/4 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #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)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.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 (-.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #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)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #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)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))))
(/.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 (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 (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 (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 #s(literal 1/4 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #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)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.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 (-.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal -2 binary64) kx)) #s(literal 1/2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #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)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #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)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))))
(/.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 (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 (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 (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/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)))
(-.f64 #s(literal 1 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 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)))

eval142.0ms (1.1%)

Memory
10.4MiB live, 151.9MiB allocated
Compiler

Compiled 23 968 to 3 013 computations (87.4% saved)

prune118.0ms (0.9%)

Memory
14.1MiB live, 148.7MiB allocated
Pruning

59 alts after pruning (56 fresh and 3 done)

PrunedKeptTotal
New77327800
Fresh132942
Picked415
Done123
Total79159850
Accuracy
100.0%
Counts
850 → 59
Alt Table
Click to see full alt table
StatusAccuracyProgram
45.9%
(/.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)))))
75.5%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
54.7%
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (sin.f64 th))
95.4%
(*.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))))
75.7%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (sin.f64 kx))) (sin.f64 ky))
78.2%
(*.f64 (/.f64 (sin.f64 th) (/.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))) (sin.f64 ky))
78.0%
(*.f64 (/.f64 (sin.f64 th) (/.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 ky))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
48.8%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
48.8%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
28.3%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
30.1%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
30.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
51.8%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
78.3%
(*.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))) (sin.f64 th))
38.3%
(*.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)))
38.1%
(*.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)))
86.8%
(*.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))
33.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
87.3%
(*.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))
78.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))) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
37.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
39.4%
(*.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 (*.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)) ky) ky))))) (sin.f64 th))
36.8%
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
39.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
27.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 ky ky))))) (sin.f64 th))
31.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
40.3%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
33.1%
(*.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))
46.1%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
75.6%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
31.1%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
46.6%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.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)) (sin.f64 ky))
24.3%
(*.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))
29.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
95.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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))) (sin.f64 th))
40.1%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
78.1%
(*.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))
28.1%
(*.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))
13.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
28.1%
#s(approx (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
45.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
48.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
30.4%
#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 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
41.5%
#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 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)))))))
20.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
14.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
30.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
12.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
13.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
15.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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)))))
16.0%
#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)))
16.0%
#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)))
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 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
8.2%
#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.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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
6.9%
#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))))))
38.4%
#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)))))))
28.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) (-.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)))
Compiler

Compiled 3 470 to 2 516 computations (27.5% saved)

simplify177.0ms (1.4%)

Memory
-25.5MiB live, 127.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
cost-diff0
(sin.f64 th)
cost-diff0
(/.f64 (sin.f64 th) (/.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))))
cost-diff0
(*.f64 (/.f64 (sin.f64 th) (/.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 ky))
cost-diff2
(+.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))))
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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky))))))
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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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-diff2
(*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky))
cost-diff0
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
cost-diff0
(sin.f64 ky)
cost-diff0
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
cost-diff0
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
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
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
cost-diff0
(*.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))
cost-diff0
#s(approx (/ (sin ky) (sqrt (+ (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)))
cost-diff0
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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))) (sin.f64 th))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
074737
0124737
1211737
2463727
31101721
42654721
55118721
08961691
Stop Event
iter limit
node limit
iter limit
Calls
Call 1
Inputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (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)))
(*.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.f64 (/.f64 #s(literal 1 binary64) (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))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(sin.f64 kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 ky)
ky
#s(literal 2 binary64)
(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)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
#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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky))))))
(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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))))
(+.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky))))
(-.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
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))
(*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky))
(fma.f64 (-.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) #s(literal 1 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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) ky) ky)
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) ky)
(fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64))
(*.f64 ky ky)
#s(literal -1/315 binary64)
#s(literal 2/45 binary64)
#s(literal 1/3 binary64)
#s(literal 1 binary64)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 th) (/.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 ky))
(/.f64 (sin.f64 th) (/.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)
th
(/.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)))
(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)))))
(+.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))))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))
#s(literal 1 binary64)
(cos.f64 (*.f64 #s(literal 2 binary64) ky))
(*.f64 #s(literal 2 binary64) ky)
#s(literal 2 binary64)
ky
(-.f64 #s(literal 1 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
(sqrt.f64 #s(literal 2 binary64))
(sin.f64 ky)
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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))) (sin.f64 th))
(*.f64 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 ky))))
#s(approx (/ (sin ky) (sqrt (+ (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)))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (sin.f64 ky)))
(*.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))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 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)))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #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))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
#s(literal 1 binary64)
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(sin.f64 kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(sin.f64 ky)
ky
#s(literal 2 binary64)
(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)
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
#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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (+.f64 #s(literal -1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1/2 binary64) #s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky))))))
(/.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky))))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (+.f64 #s(literal -1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1/2 binary64) #s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky))))))
(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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))))
(sqrt.f64 (fma.f64 (+.f64 #s(literal -1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1/2 binary64) #s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky)))))
(+.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky))))
(fma.f64 (+.f64 #s(literal -1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal -1/2 binary64) #s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky))))
(-.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
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))
#s(approx (pow (sin ky) 2) (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky)))
(*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky))
(fma.f64 (-.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) #s(literal 1 binary64))
(fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 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 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64))
(*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) ky) ky)
(*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky)
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64)) ky)
(*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky)
(fma.f64 (*.f64 ky ky) #s(literal -1/315 binary64) #s(literal 2/45 binary64))
(fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64))
(*.f64 ky ky)
#s(literal -1/315 binary64)
#s(literal 2/45 binary64)
#s(literal 1/3 binary64)
#s(literal 1 binary64)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 th) (/.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 ky))
(/.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)) (sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(/.f64 (sin.f64 th) (/.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 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(sin.f64 th)
th
(/.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 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(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 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(+.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))))
(-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(-.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) ky)))
#s(literal 1 binary64)
(cos.f64 (*.f64 #s(literal 2 binary64) ky))
(cos.f64 (*.f64 #s(literal -2 binary64) ky))
(*.f64 #s(literal 2 binary64) ky)
#s(literal 2 binary64)
ky
(-.f64 #s(literal 1 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
(sqrt.f64 #s(literal 2 binary64))
(sin.f64 ky)

localize840.0ms (6.5%)

Memory
-1.7MiB live, 609.9MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.45902255861065216
(/.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)))
accuracy2.4620205019221113
(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)))))
accuracy12.906348070583674
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
accuracy15.17936220097072
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))
accuracy0.1796875
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
accuracy2.426731792162272
(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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))
accuracy12.897191549847122
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
accuracy32.08386482932936
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))
accuracy0.1796875
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
accuracy2.426731792162272
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy31.520562581601858
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy33.29657134766186
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
accuracy0.17578125
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
accuracy30.02984495336372
#s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64)))
accuracy32.809808814538485
#s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 th th) #s(literal -1/6 binary64))) th))
accuracy44.68096523864222
#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.22265625
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
accuracy0.27734375
(*.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))
accuracy0.28744125976844204
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy2.4856200311967416
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Samples
357.0ms78×1valid
249.0ms103×2valid
170.0ms75×0valid
Compiler

Compiled 522 to 61 computations (88.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 629.0ms
ival-cos: 203.0ms (32.3% of total)
ival-pow2: 155.0ms (24.6% of total)
ival-mult: 131.0ms (20.8% of total)
adjust: 31.0ms (4.9% of total)
ival-sub: 24.0ms (3.8% of total)
ival-sin: 24.0ms (3.8% of total)
const: 17.0ms (2.7% of total)
ival-div: 15.0ms (2.4% of total)
ival-sqrt: 14.0ms (2.2% of total)
ival-add: 14.0ms (2.2% of total)
exact: 1.0ms (0.2% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)

series100.0ms (0.8%)

Memory
-2.4MiB live, 104.2MiB allocated
Counts
31 → 156
Calls
Call 1
Inputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (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)))
(*.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.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 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 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 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky))))))
(+.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))))
(*.f64 (/.f64 (sin.f64 th) (/.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 ky))
(/.f64 (sin.f64 th) (/.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)
(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)))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))))
(-.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 (+.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)))))
(/.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
(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))))))
(/ 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)))
(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))))
(- 1 (cos (* 2 ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))) (cos (* 2 ky)))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (* (sin th) (sqrt 2)))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky)))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(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))
(* 2 (pow kx 2))
(* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* (pow kx 2) (+ 4/45 (* -2/315 (pow kx 2)))) 2/3))))
(sqrt (- 1 (cos (* 2 ky))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* -1/2 (* (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (/ (pow kx 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (/ (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (/ (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 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 (/ 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)))))))
(- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(pow (sin kx) 2)
(sqrt (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))
(- 1 (cos (* -2 kx)))
(sqrt (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))
(* (/ 1 (sqrt 2)) (sqrt (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))
(/ (* 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))))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 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/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 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))))))
(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))))
(* (* 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))))))))))))))))))))
(- (+ 1 (* 2 (pow ky 2))) (cos (* -2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))) (cos (* -2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))) (cos (* -2 kx)))
(* (* ky (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx))))))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (+ (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (- 1 (cos (* -2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (- 1 (cos (* -2 kx)))))))))) (sqrt (- 1 (cos (* -2 kx)))))) (+ (* -1/12 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx)))))) (+ (* -1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* -1/5040 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))))))))))))
(* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))
(+ (* -1 (* (* (pow ky 2) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* 1/2 (* (* (pow ky 2) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))))) (sqrt (- 1 (cos (* -2 kx)))))))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* (pow ky 2) (+ (* -1/2 (* (* (pow ky 2) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (- 1 (cos (* -2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (- 1 (cos (* -2 kx))))))))))) (sqrt (- 1 (cos (* -2 kx)))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx)))))))))))
(+ (pow ky 2) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(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)))))))))))))
(* 2 (pow ky 2))
(* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* (pow ky 2) (+ 4/45 (* -2/315 (pow ky 2)))) 2/3))))
(sqrt (- 1 (cos (* -2 kx))))
(+ (sqrt (- 1 (cos (* -2 kx)))) (* (pow ky 2) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))
(+ (sqrt (- 1 (cos (* -2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* -2 kx))))) (* -1/2 (* (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* -2 kx)))))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))
(+ (sqrt (- 1 (cos (* -2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* -2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* 1/2 (* (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (- 1 (cos (* -2 kx))))))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx))))) (* (/ (pow ky 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (/ (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* -2 kx)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx))))) (* (pow ky 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* 1/2 (* (/ (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (- 1 (cos (* -2 kx))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))))
(* -1/315 (pow ky 8))
(* (pow ky 8) (- (* 2/45 (/ 1 (pow ky 2))) 1/315))
(* (pow ky 8) (- (* 2/45 (/ 1 (pow ky 2))) (+ 1/315 (/ 1/3 (pow ky 4)))))
(* (pow ky 8) (- (+ (* 2/45 (/ 1 (pow ky 2))) (/ 1 (pow ky 6))) (+ 1/315 (/ 1/3 (pow ky 4)))))
(* (* 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)))
(* (* 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 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))))
(* (* th (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))))
(* th (+ (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))
(* th (+ (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))))
(* -1/6 (pow th 2))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* (pow th 2) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

TimeVariablePointExpression
22.0ms
ky
@0
((* (/ (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 (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin ky)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (* (/ (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) (* (/ (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) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (+ (* (- (* (* (+ (* (* ky ky) -1/315) 2/45) ky) ky) 1/3) (* ky ky)) 1) (* ky 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)))) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin th) (pow (sin ky) 2) (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (* (* th th) -1/6) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2)))
20.0ms
th
@inf
((* (/ (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 (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin ky)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (* (/ (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) (* (/ (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) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (+ (* (- (* (* (+ (* (* ky ky) -1/315) 2/45) ky) ky) 1/3) (* ky ky)) 1) (* ky 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)))) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin th) (pow (sin ky) 2) (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (* (* th th) -1/6) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2)))
13.0ms
th
@-inf
((* (/ (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 (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin ky)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (* (/ (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) (* (/ (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) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (+ (* (- (* (* (+ (* (* ky ky) -1/315) 2/45) ky) ky) 1/3) (* ky ky)) 1) (* ky 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)))) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin th) (pow (sin ky) 2) (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (* (* th th) -1/6) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2)))
9.0ms
kx
@inf
((* (/ (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 (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin ky)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (* (/ (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) (* (/ (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) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (+ (* (- (* (* (+ (* (* ky ky) -1/315) 2/45) ky) ky) 1/3) (* ky ky)) 1) (* ky 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)))) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin th) (pow (sin ky) 2) (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (* (* th th) -1/6) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2)))
8.0ms
ky
@inf
((* (/ (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 (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (sin ky)) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (* (/ (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) (* (/ (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) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (* (+ (* (- (* (* (+ (* (* ky ky) -1/315) 2/45) ky) ky) 1/3) (* ky ky)) 1) (* ky 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)))) (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin th) (pow (sin ky) 2) (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (* (* th th) -1/6) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2))) (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))) (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2)))

simplify183.0ms (1.4%)

Memory
19.4MiB live, 296.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
09106599
133506213
081685975
Stop Event
iter limit
node limit
Counts
156 → 154
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))))))
(/ 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)))
(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))))
(- 1 (cos (* 2 ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))) (cos (* 2 ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))) (cos (* 2 ky)))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (* (sin th) (sqrt 2)))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky)))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(+ (* -1 (* (* (pow kx 2) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(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))
(* 2 (pow kx 2))
(* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* (pow kx 2) (+ 4/45 (* -2/315 (pow kx 2)))) 2/3))))
(sqrt (- 1 (cos (* 2 ky))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* -1/2 (* (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (/ (pow kx 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (/ (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (/ (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 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 (/ 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)))))))
(- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(pow (sin kx) 2)
(sqrt (- (+ 1/2 (pow (sin ky) 2)) (* 1/2 (cos (* 2 kx)))))
(- 1 (cos (* -2 kx)))
(sqrt (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))
(* (/ 1 (sqrt 2)) (sqrt (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))
(/ (* 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))))
(/ 1 (sin kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 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/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 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))))))
(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))))
(* (* 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))))))))))))))))))))
(- (+ 1 (* 2 (pow ky 2))) (cos (* -2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))) (cos (* -2 kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))) (cos (* -2 kx)))
(* (* ky (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx))))))))))))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (+ (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (- 1 (cos (* -2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (- 1 (cos (* -2 kx)))))))))) (sqrt (- 1 (cos (* -2 kx)))))) (+ (* -1/12 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx)))))) (+ (* -1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* -1/5040 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))))))))))))
(* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))
(+ (* -1 (* (* (pow ky 2) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* 1/2 (* (* (pow ky 2) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))))) (sqrt (- 1 (cos (* -2 kx)))))))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* (pow ky 2) (+ (* -1/2 (* (* (pow ky 2) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (- 1 (cos (* -2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (- 1 (cos (* -2 kx))))))))))) (sqrt (- 1 (cos (* -2 kx)))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx)))))))))))
(+ (pow ky 2) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(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)))))))))))))
(* 2 (pow ky 2))
(* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* (pow ky 2) (+ 4/45 (* -2/315 (pow ky 2)))) 2/3))))
(sqrt (- 1 (cos (* -2 kx))))
(+ (sqrt (- 1 (cos (* -2 kx)))) (* (pow ky 2) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))
(+ (sqrt (- 1 (cos (* -2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* -2 kx))))) (* -1/2 (* (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* -2 kx)))))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))
(+ (sqrt (- 1 (cos (* -2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* -2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* 1/2 (* (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (- 1 (cos (* -2 kx))))))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx)))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx))))) (* (/ (pow ky 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (/ (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* -2 kx)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx))))) (* (pow ky 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* 1/2 (* (/ (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (- 1 (cos (* -2 kx))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))))
(* -1/315 (pow ky 8))
(* (pow ky 8) (- (* 2/45 (/ 1 (pow ky 2))) 1/315))
(* (pow ky 8) (- (* 2/45 (/ 1 (pow ky 2))) (+ 1/315 (/ 1/3 (pow ky 4)))))
(* (pow ky 8) (- (+ (* 2/45 (/ 1 (pow ky 2))) (/ 1 (pow ky 6))) (+ 1/315 (/ 1/3 (pow ky 4)))))
(* (* 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)))
(* (* 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 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))))
(* (* th (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))))
(* th (+ (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))
(* th (+ (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))))
(* -1/6 (pow th 2))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* (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 (*.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))
(/ 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)))
(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))
(- 1 (cos (* 2 ky)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* 2 (pow kx 2))) (cos (* 2 ky)))
(-.f64 (fma.f64 (*.f64 kx kx) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))) (cos (* 2 ky)))
(-.f64 (fma.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(- (+ 1 (* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))) (cos (* 2 ky)))
(-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 #s(literal 4/45 binary64) (*.f64 kx kx)) #s(literal 2/3 binary64)) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))
(+ (* -1 (* (* (pow kx 2) (* (sin ky) (* (sin th) (sqrt 2)))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(fma.f64 (neg.f64 (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)) (*.f64 kx kx))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(+ (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin ky) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky)))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin ky) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 kx kx) (sin.f64 ky)) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal -1 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64) (+.f64 (/.f64 #s(literal 4/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 4/45 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))))) (*.f64 kx kx) (*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))
(+ (* -1 (* (* (pow kx 2) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(fma.f64 (neg.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (*.f64 kx kx))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* 1/2 (* (* (pow kx 2) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))))) (sqrt (- 1 (cos (* 2 ky)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))))) (*.f64 kx kx))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (* (pow kx 2) (+ (* -1/2 (* (* (pow kx 2) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (- 1 (cos (* 2 ky))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (- 1 (cos (* 2 ky))))))))))) (sqrt (- 1 (cos (* 2 ky)))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* 2 ky))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* 2 ky))) 3)))) (/ 1 (pow (- 1 (cos (* 2 ky))) 3))))) (sqrt (- 1 (cos (* 2 ky)))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal -1 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64) (+.f64 (/.f64 #s(literal 4/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 4/45 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))))))) (*.f64 kx kx)) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))))) (*.f64 kx kx) (*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))))) (*.f64 kx kx) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))))
(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)))
(* 2 (pow kx 2))
(*.f64 (*.f64 kx kx) #s(literal 2 binary64))
(* (pow kx 2) (+ 2 (* -2/3 (pow kx 2))))
(*.f64 (fma.f64 #s(literal -2/3 binary64) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* 4/45 (pow kx 2)) 2/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 #s(literal 4/45 binary64) (*.f64 kx kx)) #s(literal 2/3 binary64)) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))
(* (pow kx 2) (+ 2 (* (pow kx 2) (- (* (pow kx 2) (+ 4/45 (* -2/315 (pow kx 2)))) 2/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 #s(literal -2/315 binary64) (*.f64 kx kx) #s(literal 4/45 binary64)) (*.f64 kx kx)) #s(literal 2/3 binary64)) (*.f64 kx kx) #s(literal 2 binary64)) (*.f64 kx kx))
(sqrt (- 1 (cos (* 2 ky))))
(sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* -1/2 (* (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (*.f64 kx kx)) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(+ (sqrt (- 1 (cos (* 2 ky)))) (* (pow kx 2) (+ (sqrt (/ 1 (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 #s(literal 4/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 kx kx)) (fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal -1/2 binary64) #s(literal -1/3 binary64)))) (*.f64 kx kx) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky)))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (/ (pow kx 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))
(/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 kx kx) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* -1/2 (* (/ (* (pow kx 2) (+ 2/3 (/ 1 (- 1 (cos (* 2 ky)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (*.f64 kx kx)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 kx kx) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* 2 ky))))) (* (pow kx 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky)))))) (* (pow kx 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))) (* 1/2 (* (/ (* (pow kx 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* 2 ky))))) (- 1 (cos (* 2 ky))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* 2 ky))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 kx kx) (/.f64 (+.f64 #s(literal 4/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2/3 binary64)) (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 kx kx) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 kx kx) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))))
(* (* (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 (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(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))
(- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))
(-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(* (* (sin ky) (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))
(* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(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))))
(- 1 (cos (* -2 kx)))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(sqrt (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))
(sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(* (/ 1 (sqrt 2)) (sqrt (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))
(/.f64 (sqrt.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64)))
(/ (* 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))))
(*.f64 (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)))) (*.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/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))))
(*.f64 (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)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) ky)
(/ 1 (sin kx))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(+ (* -1/2 (/ (pow ky 2) (pow (sin kx) 3))) (/ 1 (sin kx)))
(fma.f64 (/.f64 (*.f64 ky ky) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1/2 binary64) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(+ (* (pow ky 2) (- (* 1/2 (* (pow ky 2) (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(fma.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (*.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 kx))) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1/2 (* (pow ky 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/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))))) (* 1/2 (/ 1 (pow (sin kx) 3))))) (/ 1 (sin kx)))
(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 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 kx)) (*.f64 ky ky)) (*.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 kx)))) (*.f64 ky ky)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
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)
(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))
(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))
(* (* 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 (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 (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) (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 (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)))) (*.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)
(- (+ 1 (* 2 (pow ky 2))) (cos (* -2 kx)))
(-.f64 (fma.f64 (*.f64 ky ky) #s(literal 2 binary64) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))) (cos (* -2 kx)))
(-.f64 (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -2/3 binary64) #s(literal 2 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(- (+ 1 (* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))) (cos (* -2 kx)))
(-.f64 (fma.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 4/45 binary64)) #s(literal 2/3 binary64)) (*.f64 ky ky) #s(literal 2 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))
(* (* ky (* (sin th) (sqrt 2))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64))))
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) ky)
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) #s(literal 1/2 binary64) (fma.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (*.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) ky)
(* ky (+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (+ (* -1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* (pow ky 2) (+ (* 1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (+ (* 1/6 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (+ (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (- 1 (cos (* -2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (- 1 (cos (* -2 kx)))))))))) (sqrt (- 1 (cos (* -2 kx)))))) (+ (* -1/12 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx)))))) (+ (* -1/120 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* -1/5040 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))))))))))))
(*.f64 (fma.f64 (fma.f64 (fma.f64 (*.f64 #s(literal 1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 (*.f64 #s(literal 1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (fma.f64 (fma.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (fma.f64 (/.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -1 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64) (+.f64 (/.f64 #s(literal 4/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 4/45 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64))))))) (*.f64 #s(literal -1/12 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))))))) (fma.f64 (*.f64 #s(literal -1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/5040 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (fma.f64 (*.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) ky)
(* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))
(+ (* -1 (* (* (pow ky 2) (* (sin th) (sqrt 2))) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))
(fma.f64 (neg.f64 (*.f64 (*.f64 ky ky) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* 1/2 (* (* (pow ky 2) (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))))) (sqrt (- 1 (cos (* -2 kx)))))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (*.f64 ky ky) (sin.f64 th)) (*.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (sqrt.f64 #s(literal 2 binary64))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))))
(+ (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1 (* (* (sin th) (sqrt 2)) (sqrt (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (* (pow ky 2) (+ (* -1/2 (* (* (pow ky 2) (* (sin th) (* (sqrt 2) (+ (* -1 (/ (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (- 1 (cos (* -2 kx))))) (+ (* 4/45 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (+ (* 4/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 3))) (* 2 (/ (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (- 1 (cos (* -2 kx))))))))))) (sqrt (- 1 (cos (* -2 kx)))))) (* 1/2 (* (* (sin th) (* (sqrt 2) (- (+ (* 2/3 (/ 1 (pow (- 1 (cos (* -2 kx))) 2))) (* 4 (/ 1 (pow (- 1 (cos (* -2 kx))) 3)))) (/ 1 (pow (- 1 (cos (* -2 kx))) 3))))) (sqrt (- 1 (cos (* -2 kx)))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (fma.f64 #s(literal -1/2 binary64) (*.f64 (*.f64 (*.f64 ky ky) (sin.f64 th)) (*.f64 (fma.f64 (/.f64 (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -1 binary64) (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2 binary64) (+.f64 (/.f64 #s(literal 4/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 4/45 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (-.f64 (+.f64 (/.f64 #s(literal 4 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 2 binary64)))) (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))))) (*.f64 ky ky) (*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) #s(literal 3 binary64)))))) (*.f64 ky ky) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th))))
(+ (pow ky 2) (pow (sin kx) 2))
(fma.f64 ky ky (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* (pow ky 2) (+ 1 (* -1/3 (pow ky 2)))) (pow (sin kx) 2))
(fma.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)))
(+ (* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3)))) (pow (sin kx) 2))
(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) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(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)))))
(* 2 (pow ky 2))
(*.f64 (*.f64 ky ky) #s(literal 2 binary64))
(* (pow ky 2) (+ 2 (* -2/3 (pow ky 2))))
(*.f64 (fma.f64 (*.f64 ky ky) #s(literal -2/3 binary64) #s(literal 2 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* 4/45 (pow ky 2)) 2/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 4/45 binary64)) #s(literal 2/3 binary64)) (*.f64 ky ky) #s(literal 2 binary64)) (*.f64 ky ky))
(* (pow ky 2) (+ 2 (* (pow ky 2) (- (* (pow ky 2) (+ 4/45 (* -2/315 (pow ky 2)))) 2/3))))
(*.f64 (fma.f64 (-.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -2/315 binary64) #s(literal 4/45 binary64)) (*.f64 ky ky)) #s(literal 2/3 binary64)) (*.f64 ky ky) #s(literal 2 binary64)) (*.f64 ky ky))
(sqrt (- 1 (cos (* -2 kx))))
(sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))
(+ (sqrt (- 1 (cos (* -2 kx)))) (* (pow ky 2) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))
(fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(+ (sqrt (- 1 (cos (* -2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* -2 kx))))) (* -1/2 (* (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* -2 kx)))))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))
(fma.f64 (*.f64 (fma.f64 #s(literal -1/2 binary64) (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (*.f64 ky ky)) #s(literal 1 binary64)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(+ (sqrt (- 1 (cos (* -2 kx)))) (* (pow ky 2) (+ (sqrt (/ 1 (- 1 (cos (* -2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* 1/2 (* (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (- 1 (cos (* -2 kx))))))) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (+.f64 #s(literal 4/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 ky ky)) (fma.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal -1/2 binary64) #s(literal -1/3 binary64)))) (*.f64 ky ky) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))))
(* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx)))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx))))) (* (/ (pow ky 2) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))
(/.f64 (fma.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 ky ky) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx))))) (* (pow ky 2) (+ (* -1/2 (* (/ (* (pow ky 2) (+ 2/3 (/ 1 (- 1 (cos (* -2 kx)))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))))))
(fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal -1/2 binary64) (/.f64 (*.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (*.f64 ky ky)) (sqrt.f64 #s(literal 2 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 ky ky) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64))))
(+ (* (/ 1 (sqrt 2)) (sqrt (- 1 (cos (* -2 kx))))) (* (pow ky 2) (+ (* (/ 1 (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx)))))) (* (pow ky 2) (+ (* -1/2 (* (/ (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))) (* 1/2 (* (/ (* (pow ky 2) (- 4/45 (* -1 (/ (+ 2/3 (/ 1 (- 1 (cos (* -2 kx))))) (- 1 (cos (* -2 kx))))))) (sqrt 2)) (sqrt (/ 1 (- 1 (cos (* -2 kx))))))))))))
(fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (fma.f64 #s(literal 1/2 binary64) (*.f64 (*.f64 ky ky) (/.f64 (+.f64 #s(literal 4/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 #s(literal -1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) #s(literal 2/3 binary64)) (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (*.f64 ky ky) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64))))
(* -1/315 (pow ky 8))
(*.f64 (pow.f64 ky #s(literal 8 binary64)) #s(literal -1/315 binary64))
(* (pow ky 8) (- (* 2/45 (/ 1 (pow ky 2))) 1/315))
(*.f64 (-.f64 (/.f64 #s(literal 2/45 binary64) (*.f64 ky ky)) #s(literal 1/315 binary64)) (pow.f64 ky #s(literal 8 binary64)))
(* (pow ky 8) (- (* 2/45 (/ 1 (pow ky 2))) (+ 1/315 (/ 1/3 (pow ky 4)))))
(*.f64 (-.f64 (-.f64 (/.f64 #s(literal 2/45 binary64) (*.f64 ky ky)) #s(literal 1/315 binary64)) (/.f64 #s(literal 1/3 binary64) (pow.f64 ky #s(literal 4 binary64)))) (pow.f64 ky #s(literal 8 binary64)))
(* (pow ky 8) (- (+ (* 2/45 (/ 1 (pow ky 2))) (/ 1 (pow ky 6))) (+ 1/315 (/ 1/3 (pow ky 4)))))
(*.f64 (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 ky #s(literal 6 binary64))) (/.f64 #s(literal 2/45 binary64) (*.f64 ky ky))) (+.f64 (/.f64 #s(literal 1/3 binary64) (pow.f64 ky #s(literal 4 binary64))) #s(literal 1/315 binary64))) (pow.f64 ky #s(literal 8 binary64)))
(* (* 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))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sin.f64 ky)) (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 (*.f64 th th) (sin.f64 ky)) (*.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 (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) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 th th) (sin.f64 ky))))) (*.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))
(* (* 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))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sin.f64 ky)) (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 (*.f64 th th) (sin.f64 ky)) (*.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 (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) (sin.f64 ky) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 th th) (sin.f64 ky))))) (*.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 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))
(* th (+ (* -1/6 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky) (*.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (*.f64 th th))))) th)
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (*.f64 th th)) (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky))))) (*.f64 th th) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) th)
(* th (+ (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (* (sin ky) (sqrt 2))) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (sin ky) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (*.f64 th th))))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (*.f64 th th) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) th)
(* (* th (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))
(*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)
(* th (+ (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (* (pow th 2) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/120 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (*.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal 2 binary64))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) th)
(* th (+ (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))) (* (pow th 2) (+ (* -1/6 (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sqrt 2)) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky)))))))) (* 1/120 (* (sqrt 2) (sqrt (/ 1 (- 2 (+ (cos (* -2 kx)) (cos (* 2 ky))))))))))))))
(*.f64 (fma.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal 1/120 binary64) (sqrt.f64 #s(literal 2 binary64)) (*.f64 #s(literal -1/5040 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64)))))) (*.f64 th th) (*.f64 (*.f64 #s(literal -1/6 binary64) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (*.f64 th th) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) th)
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 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)))
(* (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 (* (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)))

rewrite212.0ms (1.6%)

Memory
0.6MiB live, 321.1MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
074541
0124522
1412518
22769500
08316450
Stop Event
iter limit
node limit
iter limit
Counts
31 → 451
Calls
Call 1
Inputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (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)))
(*.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.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 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 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 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky))))))
(+.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))))
(*.f64 (/.f64 (sin.f64 th) (/.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 ky))
(/.f64 (sin.f64 th) (/.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)
(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)))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
#s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.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))) #s(approx (pow (sin ky) 2) (*.f64 (fma.f64 (-.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) #s(literal 1 binary64)) (*.f64 ky ky)))))
(-.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 (+.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)))))
(/.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 (sin.f64 th) #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (sin.f64 th))
#s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #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 ky) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64))))
(*.f64 (neg.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 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 (pow.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) #s(literal -1 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 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(*.f64 (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))) (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(*.f64 (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) #s(literal -1 binary64)) #s(literal 1/2 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 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1/2 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.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/4 binary64)) #s(literal -1 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 -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/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))
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 (neg.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))))
(/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64)))
(exp.f64 (neg.f64 (*.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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (*.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)) #s(literal -1 binary64)))
(exp.f64 (*.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 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 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 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 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 ky))) (neg.f64 (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(neg.f64 (/.f64 (sin.f64 ky) (neg.f64 (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 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 (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 (sin.f64 ky) #s(literal 1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(sin.f64 ky)
(fabs.f64 (neg.f64 (sin.f64 ky)))
(fabs.f64 (sin.f64 ky))
(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 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (neg.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (fabs.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (fabs.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)))
(pow.f64 (exp.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) #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 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))) (sqrt.f64 (neg.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #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 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3 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)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #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 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64))) (sqrt.f64 (+.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (*.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3/2 binary64)) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(literal 2 binary64)))))
(sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(exp.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64))) (sinh.f64 (*.f64 (log.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64))))
(*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (neg.f64 ky)) (neg.f64 ky))
(*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)
(*.f64 (neg.f64 ky) (*.f64 (neg.f64 ky) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64))))
(*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 ky ky))
(*.f64 (*.f64 ky ky) (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)))
(*.f64 ky (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky))
(/.f64 (*.f64 (-.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) #s(literal 2 binary64))) #s(literal 1 binary64)) (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky) #s(literal 1 binary64)))
(/.f64 (*.f64 (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) #s(literal 1 binary64)) (*.f64 ky ky)) (-.f64 (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky)))
(/.f64 (*.f64 (*.f64 ky ky) (-.f64 (*.f64 (pow.f64 ky #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) #s(literal 2 binary64))) #s(literal 1 binary64))) (-.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky) #s(literal 1 binary64)))
(/.f64 (*.f64 (*.f64 ky ky) (fma.f64 (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) #s(literal 3 binary64)) (pow.f64 ky #s(literal 6 binary64)) #s(literal 1 binary64))) (-.f64 (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (pow.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) #s(literal 2 binary64)) #s(literal 1 binary64)) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky)))
(fma.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky) (*.f64 ky ky) (*.f64 #s(literal 1 binary64) (*.f64 ky ky)))
(fma.f64 (*.f64 ky ky) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky) (*.f64 (*.f64 ky ky) #s(literal 1 binary64)))
(fma.f64 (*.f64 ky ky) #s(literal 1 binary64) (*.f64 (*.f64 ky ky) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky)))
(fma.f64 #s(literal 1 binary64) (*.f64 ky ky) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky) (*.f64 ky ky)))
(+.f64 (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky) (*.f64 ky ky)) (*.f64 #s(literal 1 binary64) (*.f64 ky ky)))
(+.f64 (*.f64 #s(literal 1 binary64) (*.f64 ky ky)) (*.f64 (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky) (*.f64 ky ky)))
(+.f64 (*.f64 (*.f64 ky ky) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) ky) ky)) (*.f64 (*.f64 ky ky) #s(literal 1 binary64)))
(+.f64 (*.f64 (*.f64 ky ky) #s(literal 1 binary64)) (*.f64 (*.f64 ky ky) (*.f64 (*.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) 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 (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 (-.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 (+.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 (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 (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 (PI.f64)) (neg.f64 kx))) (cos.f64 (+.f64 (+.f64 kx (PI.f64)) (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 (/.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 (fabs.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 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx)))
(neg.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 kx))))
(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/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)))
(-.f64 #s(literal 1 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 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 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx)))
(fabs.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 kx))))
(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 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))) #s(literal 1/2 binary64))))
(/.f64 (-.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (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) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (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 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)) (pow.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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(/.f64 (-.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))) (+.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (pow.f64 (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) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 3 binary64))) (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (-.f64 (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 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))))
(/.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)))) (neg.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))))))
(/.f64 (neg.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.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)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))))) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64))))
(/.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))))) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.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) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)) (-.f64 (pow.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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(/.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.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)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 ky ky) (neg.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 ky ky) (neg.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 ky ky) (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 ky ky) (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 ky ky) (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 ky ky) (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(fma.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(-.f64 (/.f64 (pow.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))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (/.f64 (pow.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) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))))
(-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))
(-.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))
(-.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(+.f64 (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64)) (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.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)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (/.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64)) (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.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)))) (pow.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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))
(+.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))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (neg.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))))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (/.f64 (sin.f64 th) (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)))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (neg.f64 (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 (sin.f64 ky) (neg.f64 (sin.f64 th))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 th) (neg.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))))))) (neg.f64 (sqrt.f64 #s(literal 2 binary64))))
(*.f64 (/.f64 (sin.f64 th) (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 #s(literal 2 binary64)) (/.f64 (sin.f64 th) (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)))))))
(/.f64 (*.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (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))))))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(neg.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(sin.f64 th)
(*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (pow.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 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 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 (+.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 (fabs.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))
(-.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) ky))))
(-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64)))
(fabs.f64 (-.f64 (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #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 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64)) #s(literal 1 binary64)))
(exp.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.f64 (sin.f64 ky)) #s(literal 2 binary64))) (sinh.f64 (*.f64 (log.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 (-.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 (neg.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 (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 kx) #s(literal 4 binary64)) (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 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.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) ky))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))) (*.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.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)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 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 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #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 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 ky) (sin.f64 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))
(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 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64))) #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.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) (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 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (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))) (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 (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 ky) (sin.f64 ky) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 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 (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) 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 kx) #s(literal 2 binary64)) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 ky)))
(-.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 #s(literal 1/2 binary64) (/.f64 (-.f64 (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 (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)) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 kx)))
(-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 kx))))
(+.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/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 ky) (sin.f64 kx)) #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 ky) (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 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
#s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #s(literal 1/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)) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #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)) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 #s(literal 1/8 binary64) (pow.f64 (-.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #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)) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))) #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)) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky))))))))
(/.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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #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 (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) ky) ky) #s(literal 1/3 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky) ky)))) #s(literal 1/2 binary64))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 ky ky) (neg.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 ky ky) (neg.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 ky ky) (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 ky ky) (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (-.f64 ky ky) (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 (-.f64 ky ky) (*.f64 #s(literal 2 binary64) ky)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))
(fma.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 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))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(-.f64 (pow.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64))))
(-.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))
(+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal -2 binary64) kx)) #s(literal 2 binary64)))))
(*.f64 #s(literal -2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))) (sin.f64 (/.f64 (+.f64 #s(literal 0 binary64) (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal -2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(*.f64 #s(literal 2 binary64) (*.f64 (sin.f64 (/.f64 (-.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64))) (cos.f64 (/.f64 (+.f64 (+.f64 #s(literal 0 binary64) (/.f64 (PI.f64) #s(literal 2 binary64))) (fma.f64 #s(literal 2 binary64) kx (/.f64 (PI.f64) #s(literal 2 binary64)))) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))) (neg.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(/.f64 (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)))
(/.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 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 kx) #s(literal 2 binary64)))
(fma.f64 (fabs.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64))) #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.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) (pow.f64 (sin.f64 kx) #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 kx) #s(literal 2 binary64)))
(fma.f64 (+.f64 (cos.f64 (fma.f64 #s(literal -2 binary64) kx (PI.f64))) #s(literal 1 binary64)) #s(literal 1/2 binary64) (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 kx) #s(literal 2 binary64)))
(fma.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(-.f64 (pow.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64))))
(-.f64 (pow.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)) (/.f64 (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64))))
(-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (neg.f64 (pow.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 1/4 binary64))) (neg.f64 (pow.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 1/4 binary64))))
(*.f64 (fabs.f64 (pow.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 1/4 binary64))) (fabs.f64 (pow.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 1/4 binary64))))
(*.f64 (pow.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 1/4 binary64)) (pow.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 1/4 binary64)))
(pow.f64 (exp.f64 (log.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 1/2 binary64))
(pow.f64 (*.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)))) (+.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 1/4 binary64))
(pow.f64 (pow.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 1/4 binary64)) #s(literal 2 binary64))
(pow.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 1/2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)))) (sqrt.f64 (+.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (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)))) (sqrt.f64 (+.f64 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))) (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))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 3 binary64)) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (+.f64 (pow.f64 (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) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))
(/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 #s(literal 1 binary64) (+.f64 (pow.f64 (-.f64 (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 #s(literal 1 binary64) (-.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))))) (sqrt.f64 (neg.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)))))))
(/.f64 (sqrt.f64 (neg.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.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)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 2 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (pow.f64 (sin.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 3 binary64))) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)) (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (-.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))))) (sqrt.f64 (*.f64 (fma.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) (+.f64 (cos.f64 (*.f64 #s(literal -2 binary64) ky)) #s(literal 1 binary64)) #s(literal 1 binary64)) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) (+.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1 binary64)) #s(literal 1 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)))) (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))))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3/2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3/2 binary64))) (sqrt.f64 (+.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)) (-.f64 (pow.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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3/2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3/2 binary64))) (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.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)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)))))
(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)))))
(exp.f64 (*.f64 (log.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 1/2 binary64)))
(+.f64 (cosh.f64 (*.f64 (log.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 1/2 binary64))) (sinh.f64 (*.f64 (log.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 1/2 binary64))))
(*.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)))
(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 (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 (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 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 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (neg.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 (neg.f64 (neg.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))))))) (neg.f64 (neg.f64 (sqrt.f64 #s(literal 2 binary64)))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)))) (sqrt.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))))
(/.f64 (hypot.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 3/2 binary64)) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3/2 binary64))) (sqrt.f64 (*.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (-.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)))) (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 2 binary64))) #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 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (*.f64 (sin.f64 ky) (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 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(/.f64 (neg.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)))))) (neg.f64 (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)))
(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 (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))) (pow.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 kx))) #s(literal 1 binary64)) (pow.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 (sin.f64 ky)) #s(literal 1 binary64)) (neg.f64 (neg.f64 (neg.f64 (sin.f64 kx)))))
(hypot.f64 (pow.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 (sin.f64 ky)) #s(literal 1 binary64)) (neg.f64 (neg.f64 (sin.f64 kx))))
(hypot.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (neg.f64 (sin.f64 kx)))
(hypot.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (sin.f64 kx))
(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))) (pow.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 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 (neg.f64 (sin.f64 kx)) (pow.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 (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))
(hypot.f64 (sin.f64 kx) (pow.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))
(exp.f64 (-.f64 (*.f64 (log.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 1/2 binary64)) (*.f64 (log.f64 #s(literal 2 binary64)) #s(literal 1/2 binary64))))
(exp.f64 (*.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)))
(+.f64 (cosh.f64 (*.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))) (sinh.f64 (*.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))))

eval171.0ms (1.3%)

Memory
16.9MiB live, 214.0MiB allocated
Compiler

Compiled 29 342 to 3 900 computations (86.7% saved)

prune95.0ms (0.7%)

Memory
19.9MiB live, 212.4MiB allocated
Pruning

67 alts after pruning (64 fresh and 3 done)

PrunedKeptTotal
New63632668
Fresh193251
Picked325
Done213
Total66067727
Accuracy
100.0%
Counts
727 → 67
Alt Table
Click to see full alt table
StatusAccuracyProgram
45.9%
(/.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)))))
75.5%
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
54.7%
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (sin.f64 th))
78.1%
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (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)))))) (sin.f64 ky))
78.0%
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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)))
75.7%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (sin.f64 kx))) (sin.f64 ky))
77.9%
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
29.2%
(*.f64 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
30.6%
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
33.0%
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
78.0%
(*.f64 (/.f64 (sin.f64 th) (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)))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
48.8%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
48.8%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
30.2%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
51.8%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
38.3%
(*.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)))
38.1%
(*.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)))
27.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 ky ky))))) (sin.f64 th))
31.0%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
40.3%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
33.1%
(*.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))
37.1%
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
36.9%
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
46.1%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
36.8%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
26.0%
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
78.0%
(*.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky))
78.1%
(*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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)))
75.6%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
27.8%
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
38.1%
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
38.4%
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
77.9%
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
30.6%
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
33.0%
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
31.1%
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
24.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin 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))) (sin.f64 th))
29.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
78.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
78.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
40.1%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
30.1%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
31.0%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
28.1%
(*.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))
13.5%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
38.4%
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
77.8%
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
30.4%
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
27.9%
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
28.1%
#s(approx (* (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.f64 (*.f64 (sin.f64 th) ky) (sin.f64 kx)))
48.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
20.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
14.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
30.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
12.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
13.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
15.5%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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)))))
16.0%
#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)))
16.0%
#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)))
8.5%
#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)))
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 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) th) th)) th)))
8.2%
#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.2%
#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.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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
6.9%
#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))))))
38.4%
#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)))))))
28.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) (-.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)))
Compiler

Compiled 5 844 to 2 298 computations (60.7% saved)

regimes334.0ms (2.6%)

Memory
-21.1MiB live, 504.3MiB allocated
Counts
121 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (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)))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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 (/.f64 (*.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (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)))))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.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))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (/.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))) (sin.f64 ky))
(*.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) (/.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 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.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 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (*.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)) (sin.f64 ky))
(*.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 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 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))))) (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 (/.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 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64))))) (sin.f64 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))) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
#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 (/.f64 (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) (sqrt.f64 #s(literal 2 binary64))) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (neg.f64 (sqrt.f64 (sin.f64 ky))) #s(literal 2 binary64)) (sin.f64 kx))) (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))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (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))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1 binary64) (*.f64 (cos.f64 ky) (cos.f64 ky)))))) (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 (cos.f64 (+.f64 (neg.f64 ky) (/.f64 (PI.f64) #s(literal 2 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))
#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 (pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64)) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 (acos.f64 (cos.f64 ky))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 1/4 binary64)) #s(literal 4 binary64)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.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 (*.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)))))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Calls

9 calls:

49.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)))))
48.0ms
kx
42.0ms
(sin.f64 kx)
35.0ms
th
33.0ms
ky
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)

regimes220.0ms (1.7%)

Memory
4.9MiB live, 383.5MiB allocated
Counts
92 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (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)))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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 (/.f64 (*.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (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)))))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.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))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) (/.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))) (sin.f64 ky))
(*.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) (/.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 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (-.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (/.f64 (+.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal 1 binary64)) #s(literal 2 binary64)) (/.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (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))) (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))) (sin.f64 th))
Calls

9 calls:

28.0ms
(sin.f64 th)
25.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))
24.0ms
th
24.0ms
(sin.f64 ky)
24.0ms
ky
Results
AccuracySegmentsBranch
88.8%2th
88.4%3(sin.f64 th)
95.7%3(sin.f64 kx)
95.7%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.5%3(sin.f64 ky)
99.2%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)))))
86.7%5(*.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))
95.7%2kx
99.5%2ky
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes28.0ms (0.2%)

Memory
8.1MiB live, 53.6MiB allocated
Counts
86 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (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)))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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 (/.f64 (*.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (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)))))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
Calls

1 calls:

23.0ms
ky
Results
AccuracySegmentsBranch
99.4%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes26.0ms (0.2%)

Memory
-2.0MiB live, 43.5MiB allocated
Counts
83 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (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)))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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 (/.f64 (*.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (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)))))) (sin.f64 ky))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (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)))))) (sin.f64 ky))
Calls

1 calls:

22.0ms
ky
Results
AccuracySegmentsBranch
99.3%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes34.0ms (0.3%)

Memory
-13.8MiB live, 38.7MiB allocated
Counts
82 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (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)))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
(*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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)))
Calls

1 calls:

29.0ms
ky
Results
AccuracySegmentsBranch
99.3%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes41.0ms (0.3%)

Memory
-8.1MiB live, 38.9MiB allocated
Counts
81 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (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)))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 ky)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
(*.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky))
Calls

1 calls:

20.0ms
ky
Results
AccuracySegmentsBranch
99.3%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes29.0ms (0.2%)

Memory
37.7MiB live, 72.3MiB allocated
Counts
79 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
(*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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)))
Calls

1 calls:

24.0ms
ky
Results
AccuracySegmentsBranch
99.3%2ky
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes383.0ms (3%)

Memory
9.7MiB live, 457.2MiB allocated
Counts
78 → 6
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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
Calls

9 calls:

68.0ms
(sin.f64 kx)
61.0ms
th
36.0ms
(sin.f64 th)
35.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
34.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
74.7%7(*.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))
78.3%3(sin.f64 th)
78.6%2th
75.3%4(sin.f64 kx)
85.9%6(/.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)))))
73.5%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
75.5%3kx
77.8%3(sin.f64 ky)
78.2%2ky
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes24.0ms (0.2%)

Memory
20.2MiB live, 70.8MiB allocated
Counts
77 → 6
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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (pow.f64 #s(approx (sqrt (sin ky)) (sqrt.f64 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))))) (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) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (fma.f64 (*.f64 ky (*.f64 ky ky)) (-.f64 (*.f64 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) ky) ky) #s(literal 1/6 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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)))
(*.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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
Calls

1 calls:

20.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
85.9%6(/.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)

regimes24.0ms (0.2%)

Memory
21.0MiB live, 65.3MiB allocated
Counts
72 → 6
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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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 (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 (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 (/.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
(*.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 (/.f64 (sin.f64 ky) (hypot.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) ky)) (sin.f64 kx))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (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) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
Calls

1 calls:

20.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
85.9%6(/.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)

regimes28.0ms (0.2%)

Memory
-30.2MiB live, 70.5MiB allocated
Counts
66 → 6
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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))) (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 (/.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))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (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) (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))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.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 (/.f64 (sin.f64 ky) (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))) (sin.f64 th))
Calls

1 calls:

21.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
85.9%6(/.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)

regimes21.0ms (0.2%)

Memory
8.5MiB live, 54.6MiB allocated
Counts
63 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (sin th)) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th)) (sin.f64 ky)))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky)))))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 ky))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

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

regimes19.0ms (0.1%)

Memory
7.8MiB live, 53.9MiB allocated
Counts
59 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Outputs
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

16.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.7%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)

regimes20.0ms (0.2%)

Memory
21.6MiB live, 66.4MiB allocated
Counts
58 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
Outputs
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

16.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.7%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)

regimes101.0ms (0.8%)

Memory
-23.0MiB live, 28.9MiB allocated
Counts
57 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
Outputs
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
#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
83.7%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)

regimes22.0ms (0.2%)

Memory
-18.5MiB live, 34.7MiB allocated
Counts
56 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) 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 (/.f64 (sin.f64 th) (/.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 ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)))
(*.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (fma.f64 #s(literal -1/6 binary64) (*.f64 (*.f64 th th) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 #s(literal 2 binary64)))) th)) (sin.f64 ky))
Outputs
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

19.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.7%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)

regimes17.0ms (0.1%)

Memory
-4.5MiB live, 41.9MiB allocated
Counts
51 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.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 (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/3 binary64) #s(literal 1 binary64)) ky) ky))))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (-.f64 (*.f64 (*.f64 ky ky) #s(literal 1/120 binary64)) #s(literal 1/6 binary64)) (*.f64 ky ky) #s(literal 1 binary64)) 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 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (fma.f64 (*.f64 kx (*.f64 kx kx)) (-.f64 (*.f64 (*.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 kx kx) #s(literal 1/120 binary64)) kx) kx) #s(literal 1/6 binary64)) 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) (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) (fma.f64 (*.f64 th (*.f64 th th)) (-.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)))
(*.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 (*.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)) ky) ky))))) (sin.f64 th))
Outputs
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#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
83.6%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)

regimes14.0ms (0.1%)

Memory
32.4MiB live, 32.4MiB allocated
Counts
45 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
Outputs
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

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)))))
Results
AccuracySegmentsBranch
83.6%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)

regimes76.0ms (0.6%)

Memory
-17.1MiB live, 172.7MiB allocated
Counts
44 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 #s(approx (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx)))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (sqrt.f64 #s(literal 2 binary64)))) (sin.f64 ky))
Outputs
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

6 calls:

13.0ms
th
13.0ms
(sin.f64 th)
12.0ms
kx
12.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)))))
11.0ms
ky
Results
AccuracySegmentsBranch
63.3%4kx
73.7%3(sin.f64 ky)
56.0%3(sin.f64 th)
73.7%2ky
56.0%2th
75.4%3(/.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 20 to 28 computations (-40% saved)

regimes55.0ms (0.4%)

Memory
-10.5MiB live, 132.7MiB allocated
Counts
39 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
Outputs
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) 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) #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 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

5 calls:

11.0ms
(sin.f64 kx)
11.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
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
(sin.f64 ky)
10.0ms
ky
Results
AccuracySegmentsBranch
61.2%4(sin.f64 kx)
67.6%3(sin.f64 ky)
61.6%4(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
63.1%3ky
71.7%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 22 to 28 computations (-27.3% saved)

regimes34.0ms (0.3%)

Memory
-8.4MiB live, 85.8MiB allocated
Counts
38 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #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) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) 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) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #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

3 calls:

11.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))
10.0ms
(sin.f64 ky)
10.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
65.1%4(sin.f64 ky)
53.2%5(*.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))
63.2%3(/.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 31 to 28 computations (9.7% saved)

regimes53.0ms (0.4%)

Memory
8.0MiB live, 103.6MiB allocated
Counts
37 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (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))
(*.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 ky ky))))) (sin.f64 th))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx 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))
Calls

5 calls:

10.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
10.0ms
(sin.f64 ky)
10.0ms
ky
10.0ms
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
59.9%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
59.9%3kx
59.1%3ky
57.2%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)))))
61.4%4(sin.f64 ky)
Compiler

Compiled 21 to 27 computations (-28.6% saved)

regimes30.0ms (0.2%)

Memory
14.2MiB live, 60.7MiB allocated
Counts
35 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.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)) (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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
(*.f64 (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))) (sin.f64 ky))) (sin.f64 th))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))) (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.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.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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (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 ky) (sqrt (+ (pow (sin 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))) (sin.f64 th))
Outputs
(*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #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

3 calls:

11.0ms
(sin.f64 ky)
9.0ms
kx
8.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Results
AccuracySegmentsBranch
59.7%3(sin.f64 ky)
55.1%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
55.1%3kx
Compiler

Compiled 7 to 13 computations (-85.7% saved)

regimes25.0ms (0.2%)

Memory
11.7MiB live, 58.0MiB allocated
Counts
27 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th))
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #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

3 calls:

9.0ms
(sin.f64 kx)
7.0ms
(sin.f64 ky)
7.0ms
ky
Results
AccuracySegmentsBranch
58.9%3ky
54.4%3(sin.f64 kx)
59.0%3(sin.f64 ky)
Compiler

Compiled 5 to 11 computations (-120% saved)

regimes58.0ms (0.5%)

Memory
-15.8MiB live, 81.5MiB allocated
Counts
26 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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))
#s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))))) (*.f64 (*.f64 (sin.f64 th) ky) (sqrt.f64 #s(literal 2 binary64)))))
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (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) (-.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

5 calls:

24.0ms
(sin.f64 th)
11.0ms
(sin.f64 ky)
7.0ms
th
7.0ms
ky
7.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
41.0%5(sin.f64 th)
37.7%3th
55.6%3(/.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)))))
53.0%4ky
53.2%4(sin.f64 ky)
Compiler

Compiled 19 to 25 computations (-31.6% saved)

regimes8.0ms (0.1%)

Memory
19.5MiB live, 19.5MiB allocated
Counts
24 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (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)))
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 (+ (- 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 (+ (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
55.6%3(/.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)

regimes42.0ms (0.3%)

Memory
-12.8MiB live, 33.0MiB 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) th)))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
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

3 calls:

28.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
6.0ms
kx
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
44.5%2kx
44.5%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
53.0%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 18 to 20 computations (-11.1% saved)

regimes11.0ms (0.1%)

Memory
20.4MiB live, 20.4MiB allocated
Counts
17 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 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 th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin ky)) (/.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

2 calls:

5.0ms
(sin.f64 kx)
5.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
43.8%2(sin.f64 kx)
52.3%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)

regimes77.0ms (0.6%)

Memory
-35.8MiB live, 60.0MiB allocated
Counts
15 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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

7 calls:

29.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
(sin.f64 kx)
5.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))
5.0ms
ky
5.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
34.6%2(sin.f64 kx)
35.1%2kx
35.1%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
39.5%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))
42.1%2ky
42.2%2(sin.f64 ky)
43.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 39 to 44 computations (-12.8% saved)

regimes14.0ms (0.1%)

Memory
25.8MiB live, 25.8MiB allocated
Counts
14 → 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) (*.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 (*.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 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#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))))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.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)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin 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)))))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

3 calls:

4.0ms
(sin.f64 ky)
4.0ms
ky
4.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
36.2%2ky
36.3%2(sin.f64 ky)
39.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 16 to 18 computations (-12.5% saved)

regimes31.0ms (0.2%)

Memory
14.6MiB live, 61.5MiB 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) (*.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 (*.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:

4.0ms
(sin.f64 ky)
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
ky
3.0ms
(sin.f64 th)
3.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
30.2%1(sin.f64 kx)
30.2%1kx
30.2%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
30.2%1th
31.8%2ky
30.2%1(sin.f64 th)
32.3%2(sin.f64 ky)
34.7%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))
34.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 42 to 51 computations (-21.4% saved)

regimes46.0ms (0.4%)

Memory
4.2MiB live, 51.1MiB 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) (*.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 (*.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:

23.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)))))
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
ky
3.0ms
(sin.f64 ky)
3.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
17.7%2(sin.f64 kx)
18.5%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
16.0%1th
18.6%2kx
16.0%1(sin.f64 th)
18.0%2ky
18.5%2(sin.f64 ky)
21.4%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))
20.9%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)

regimes28.0ms (0.2%)

Memory
-38.4MiB live, 8.4MiB 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) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 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)))
#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

2 calls:

25.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))
2.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
20.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)))))
20.8%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 29 to 24 computations (17.2% saved)

regimes12.0ms (0.1%)

Memory
25.1MiB live, 25.1MiB 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:

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
(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 kx)
1.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
8.2%1(sin.f64 th)
8.2%1th
8.2%1(sin.f64 kx)
8.2%1ky
8.2%1(sin.f64 ky)
8.2%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
8.2%1kx
8.2%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.2%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)

bsearch50.0ms (0.4%)

Memory
-15.9MiB live, 30.3MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
47.0ms
0.0004010146881319527
0.13469329370369612
Samples
42.0ms128×0valid
Compiler

Compiled 379 to 314 computations (17.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 38.0ms
ival-sqrt: 26.0ms (67.8% of total)
ival-sin: 7.0ms (18.3% of total)
ival-pow2: 2.0ms (5.2% of total)
ival-div: 1.0ms (2.6% of total)
ival-add: 1.0ms (2.6% of total)
ival-mult: 1.0ms (2.6% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch2.0ms (0%)

Memory
3.0MiB live, 3.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
0.0004010146881319527
0.13469329370369612
Compiler

Compiled 483 to 394 computations (18.4% saved)

bsearch2.0ms (0%)

Memory
2.8MiB live, 2.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
0.0004010146881319527
0.13469329370369612
Compiler

Compiled 363 to 322 computations (11.3% saved)

bsearch2.0ms (0%)

Memory
2.7MiB live, 2.7MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
0.0004010146881319527
0.13469329370369612
Compiler

Compiled 363 to 322 computations (11.3% saved)

bsearch2.0ms (0%)

Memory
2.8MiB live, 2.8MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
0.0004010146881319527
0.13469329370369612
Compiler

Compiled 363 to 322 computations (11.3% saved)

bsearch2.0ms (0%)

Memory
2.7MiB live, 2.7MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
1.0ms
0.0004010146881319527
0.13469329370369612
Compiler

Compiled 363 to 322 computations (11.3% saved)

bsearch1.0ms (0%)

Memory
2.1MiB live, 2.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
+inf
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.1288010095565373
-0.10815606820963777
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.1MiB live, 2.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
+inf
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.1288010095565373
-0.10815606820963777
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.2MiB live, 2.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
+inf
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.1288010095565373
-0.10815606820963777
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.1MiB live, 2.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.0
+inf
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.08525060456038092
0.10253810867143308
0.0ms
-0.1288010095565373
-0.10815606820963777
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.9MiB live, 1.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.10815606820963777
-0.09473924287144
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.8MiB live, 1.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.10815606820963777
-0.09473924287144
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.10815606820963777
-0.09473924287144
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.10815606820963777
-0.09473924287144
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.7MiB live, 1.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.10815606820963777
-0.09473924287144
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch14.0ms (0.1%)

Memory
-42.7MiB live, 1.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.10815606820963777
-0.09473924287144
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.1MiB live, 2.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9968799928479364
0.9999999999997916
0.0ms
0.00013251154312238068
0.0033798077115829686
0.0ms
-0.10815606820963777
-0.09473924287144
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.1MiB live, 1.1MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0033798077115829686
0.08525060456038092
0.0ms
-0.09473924287144
2.2369256172917125e-307
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.4MiB live, 1.4MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0033798077115829686
0.08525060456038092
0.0ms
-0.09473924287144
2.2369256172917125e-307
0.0ms
-1.0
-0.9991953634468087
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.2MiB live, 1.2MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.000401014677383905
0.06752093606336228
0.0ms
1.6253631956404475e-147
3.997976219762255e-146
0.0ms
-0.1693391001911984
-0.1431903473517363
Compiler

Compiled 18 to 18 computations (0% saved)

bsearch48.0ms (0.4%)

Memory
8.8MiB live, 53.0MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
30.0ms
2.924360007670205e-7
3.7152826950624083
15.0ms
1.859508540669865e-146
1.86632800836957e-145
Samples
35.0ms240×0valid
Compiler

Compiled 763 to 633 computations (17% saved)

Precisions
Click to see histograms. Total time spent on operations: 29.0ms
ival-sin: 18.0ms (62.9% of total)
ival-pow2: 4.0ms (14% of total)
ival-sqrt: 2.0ms (7% of total)
ival-div: 1.0ms (3.5% of total)
ival-add: 1.0ms (3.5% of total)
ival-mult: 1.0ms (3.5% of total)
ival-true: 0.0ms (0% of total)
ival-assert: 0.0ms (0% of total)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.000401014677383905
0.06752093606336228
0.0ms
1.6253631956404475e-147
3.997976219762255e-146
Compiler

Compiled 18 to 18 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.000401014677383905
0.06752093606336228
0.0ms
1.6253631956404475e-147
3.997976219762255e-146
Compiler

Compiled 18 to 18 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.9MiB live, 0.9MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0033798077115829686
0.08525060456038092
0.0ms
2.846880192500138e-125
5.634027082027752e-118
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.8MiB live, 0.8MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0033798077115829686
0.08525060456038092
0.0ms
1.7048306655790294e-107
7.895021150811706e-100
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
0.00013251154312238068
0.0033798077115829686
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
0.00013251154312238068
0.0033798077115829686
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.6MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.634736727838605e-15
8.587686412715283e-13
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
3.4966160134769076e-6
0.00013251154312238068
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch13.0ms (0.1%)

Memory
24.3MiB live, 24.3MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
12.0ms
1.4773770700086074e-63
2.0889803642044675e-59
Samples
7.0ms128×0valid
Compiler

Compiled 451 to 355 computations (21.3% saved)

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

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
1.4662977113817684e-307
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch0.0ms (0%)

Memory
0.5MiB live, 0.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.0
1.4662977113817684e-307
Compiler

Compiled 19 to 19 computations (0% saved)

simplify121.0ms (0.9%)

Memory
-1.4MiB live, 91.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 2 (0.0ms)

IterNodesCost
03594234
14754234
27524210
314944210
431974210
573494210
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 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (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))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 (/.f64 (*.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (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)))))) (sin.f64 ky)))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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))))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky)))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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))))
(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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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))) (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/36893488147419103232 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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 (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/36893488147419103232 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 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 7378697629483821/36893488147419103232 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 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 3602879701896397/36028797018963968 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 (/.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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky)) (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/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (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/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) #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/72057594037927936 binary64)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 5764607523034235/1152921504606846976 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) #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 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #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 -3602879701896397/72057594037927936 binary64)) (*.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 5764607523034235/1152921504606846976 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) #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 -5404319552844595/36028797018963968 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) (if (<=.f64 (sin.f64 ky) #s(literal 3599131035634557/1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) #s(literal 1152921504606847/2305843009213693952 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #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 3936549570225297/56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 5902958103587057/295147905179352825856 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx 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))))
(if (<=.f64 (sin.f64 ky) #s(literal 3599131035634557/1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) #s(literal 1152921504606847/2305843009213693952 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #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 (sin.f64 ky) #s(literal 3599131035634557/1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 1152921504606847/2305843009213693952 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #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 (/.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 4763410263543689/95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (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 5764607523034235/1152921504606846976 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 #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 (+ (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 3305279843951243/165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576064 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (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 5764607523034235/1152921504606846976 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 (+ (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/36893488147419103232 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 7378697629483821/36893488147419103232 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 2535301200456459/1267650600228229401496703205376 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (/.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 5902958103587057/1180591620717411303424 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (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 5427754182999197/904625697166532776746648320380374280103671755200316906558262375061821325312 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 0 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 0 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 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (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))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 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) kx))) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky)))) #s(literal 2 binary64)))) (sin.f64 ky))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (pow.f64 (/.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)) #s(literal -1 binary64))) (sin.f64 ky))) (sin.f64 th)))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 (/.f64 (*.f64 (sin.f64 th) (sqrt.f64 #s(literal 2 binary64))) (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)))))) (sin.f64 ky)))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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))))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 (*.f64 (/.f64 (sin.f64 th) (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))) (sin.f64 ky)))
(if (<=.f64 ky #s(literal 2824657686286775/1152921504606846976 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (sin.f64 th)) (*.f64 (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (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))))
(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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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))) (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/36893488147419103232 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(approx (sin th) (fma.f64 (*.f64 th (*.f64 th th)) (-.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))) (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/36893488147419103232 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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 (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/36893488147419103232 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #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 (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/36893488147419103232 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 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 7378697629483821/36893488147419103232 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 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 7378697629483821/36893488147419103232 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 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 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 3602879701896397/36028797018963968 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 -1080863910568919/9007199254740992 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 3602879701896397/36028797018963968 binary64)) (*.f64 (/.f64 (sin.f64 ky) (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))) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (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 2 binary64)) (*.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 (/.f64 (sin.f64 ky) (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))) (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) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 (/.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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #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 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (- 1 (* (cos ky) (cos ky))))) (sqrt.f64 (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 (/.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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (*.f64 th (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (/.f64 (*.f64 th (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (*.f64 th #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (/.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (sin.f64 ky)) (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/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) th) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))))) (sin.f64 ky)) (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/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) (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/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))))) #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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #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 7378697629483821/36893488147419103232 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) (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)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (*.f64 (*.f64 th (sin.f64 ky)) (sqrt.f64 #s(literal 2 binary64))) (sqrt.f64 (pow.f64 (-.f64 (-.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) kx))) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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/72057594037927936 binary64)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 5764607523034235/1152921504606846976 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) #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/72057594037927936 binary64)) #s(approx (* (/ (sin th) (/ (sqrt (+ (- 1 (cos (* 2 ky))) (- 1 (cos (* -2 kx))))) (sqrt 2))) (sin ky)) (*.f64 (sqrt.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal -2 binary64) ky))) #s(literal -1 binary64))) (*.f64 (*.f64 (sqrt.f64 #s(literal 2 binary64)) (sin.f64 th)) (sin.f64 ky)))) (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 5764607523034235/1152921504606846976 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #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 -3602879701896397/72057594037927936 binary64)) (*.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 5764607523034235/1152921504606846976 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) #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 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #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 -3602879701896397/72057594037927936 binary64)) (*.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 5764607523034235/1152921504606846976 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)))))
(if (<=.f64 (sin.f64 ky) #s(literal -5404319552844595/36028797018963968 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) (if (<=.f64 (sin.f64 ky) #s(literal 3599131035634557/1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) #s(literal 1152921504606847/2305843009213693952 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #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 (sin.f64 ky) #s(literal -5404319552844595/36028797018963968 binary64)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) #s(approx (sin kx) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 kx kx) #s(literal 1 binary64)) kx)))) #s(approx (sin th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th))) (if (<=.f64 (sin.f64 ky) #s(literal 3599131035634557/1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) #s(literal 1152921504606847/2305843009213693952 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)))))
(if (<=.f64 kx #s(literal 3936549570225297/56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 5902958103587057/295147905179352825856 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx 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))))
(if (<=.f64 kx #s(literal 3936549570225297/56236422431789954785131731346074773235871213978773957913759444657647969758393598378988008576298635714374011382919011189040103325693678746112606439760814548189184 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th)) (if (<=.f64 kx #s(literal 5902958103587057/295147905179352825856 binary64)) (*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (sqrt.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(approx (pow (sin kx) 2) (*.f64 kx 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))))
(if (<=.f64 (sin.f64 ky) #s(literal 3599131035634557/1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) #s(literal 1152921504606847/2305843009213693952 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #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 (sin.f64 ky) #s(literal 3599131035634557/1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888 binary64)) (*.f64 #s(approx (/ (sin th) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (/.f64 (sin.f64 th) (sin.f64 kx))) (sin.f64 ky)) (if (<=.f64 (sin.f64 ky) #s(literal 1152921504606847/2305843009213693952 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) (sin.f64 th))))
(if (<=.f64 (sin.f64 ky) #s(literal 3599131035634557/1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 1152921504606847/2305843009213693952 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #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 (sin.f64 ky) #s(literal 3599131035634557/1799565517817278553124215403074392743547878847320766653240302229044735032268595148127616274441556342859968364253408358049283306422197719875603406072346065542053888 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 1152921504606847/2305843009213693952 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) 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 (*.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) #s(literal 1 binary64)) (*.f64 ky ky)))))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 4763410263543689/95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (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 5764607523034235/1152921504606846976 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 #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 (+ (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 4763410263543689/95268205270873786358080970147496530326800480428008152797215483387004752771599292606210513399154418065180265231976520474104247304665780191232 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (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 5764607523034235/1152921504606846976 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (*.f64 (sqrt.f64 (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))) ky)) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 3305279843951243/165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576064 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (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 5764607523034235/1152921504606846976 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 (+ (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 3305279843951243/165263992197562149737978827008192759957101170741070304821162198818601447809077836456297302609928821211897803006255839576064 binary64)) (*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (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 5764607523034235/1152921504606846976 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (- 1/2 (* (cos (* 2 kx)) 1/2)) (pow (sin ky) 2)))) (sin th)) (*.f64 (sqrt.f64 (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))) (*.f64 (sin.f64 th) ky))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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/36893488147419103232 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 7378697629483821/36893488147419103232 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 (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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/36893488147419103232 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/36893488147419103232 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 (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 2535301200456459/1267650600228229401496703205376 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.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 (/.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 2535301200456459/1267650600228229401496703205376 binary64)) (*.f64 (/.f64 #s(approx (sin ky) (*.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/6 binary64) #s(literal 1 binary64)) ky)) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 5902958103587057/1180591620717411303424 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (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 5902958103587057/1180591620717411303424 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) #s(approx (* (* (sin ky) th) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (*.f64 ky (/.f64 th (sin.f64 kx))))) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 5427754182999197/904625697166532776746648320380374280103671755200316906558262375061821325312 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 (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 5427754182999197/904625697166532776746648320380374280103671755200316906558262375061821325312 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 0 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 0 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 0 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))))
(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 0 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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 (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (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)))
#s(approx (* (/ (sin ky) (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx))))) (sin th)) #s(approx (sin th) (*.f64 #s(approx (+ (* (* th th) -1/6) 1) (*.f64 (*.f64 #s(literal -1/6 binary64) th) th)) th)))

soundness3.1s (24.2%)

Memory
-40.1MiB live, 2 550.8MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
074541
0124522
1412518
22769500
08316450
03171402
111341336
252361308
084061228
01349
02249
15949
231949
3312949
0893734
05913599
121503361
092523207
09106599
133506213
081685975
046259
079229
1270229
21665229
08110229
042243
072190
1226190
21611190
08949190
06013296
122043028
085982875
Stop Event
fuel
iter limit
node limit
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
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 8 931 to 3 562 computations (60.1% saved)

preprocess219.0ms (1.7%)

Memory
17.2MiB live, 430.0MiB allocated
Remove

(negabs ky)

(negabs th)

(abs kx)

Compiler

Compiled 8 816 to 856 computations (90.3% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...