Toniolo and Linder, Equation (3b), real

Time bar (total: 10.0s)

start0.0ms (0%)

Memory
0.1MiB live, 0.1MiB allocated

analyze196.0ms (2%)

Memory
5.6MiB live, 254.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)

sample2.1s (21.1%)

Memory
18.3MiB live, 1 997.0MiB allocated
Samples
1.5s8 256×0valid
Precisions
Click to see histograms. Total time spent on operations: 1.2s
ival-sin: 755.0ms (61.2% of total)
ival-pow2: 253.0ms (20.5% of total)
ival-div: 72.0ms (5.8% of total)
ival-sqrt: 56.0ms (4.5% of total)
ival-mult: 52.0ms (4.2% of total)
ival-add: 36.0ms (2.9% of total)
ival-true: 7.0ms (0.6% of total)
ival-assert: 3.0ms (0.2% of total)
Bogosity

explain284.0ms (2.8%)

Memory
4.1MiB live, 204.7MiB allocated
FPErrors
Click to see full error table
Ground TruthOverpredictionsExampleUnderpredictionsExampleSubexpression
200-2(-3.023356196242793e-245 -2.3987680671571596e-162 -1.1004648292637001e+49)(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-rescue180
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))underflow65
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))underflow71
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))underflow18
Confusion
Predicted +Predicted -
+182
-0236
Precision
1.0
Recall
0.9
Confusion?
Predicted +Predicted MaybePredicted -
+1802
-00236
Precision?
1.0
Recall?
0.9
Freqs
test
numberfreq
0238
118
Total Confusion?
Predicted +Predicted MaybePredicted -
+100
-000
Precision?
1.0
Recall?
1.0
Samples
105.0ms512×0valid
Compiler

Compiled 218 to 56 computations (74.3% saved)

Precisions
Click to see histograms. Total time spent on operations: 85.0ms
ival-sin: 32.0ms (37.8% of total)
ival-mult: 27.0ms (31.9% of total)
ival-pow2: 16.0ms (18.9% of total)
ival-sqrt: 4.0ms (4.7% of total)
ival-div: 3.0ms (3.5% of total)
ival-add: 2.0ms (2.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

preprocess156.0ms (1.6%)

Memory
-7.9MiB live, 30.2MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
045153
1101147
2211147
3383147
4831147
51949147
62504147
72781147
82893147
92943147
102958147
112958147
01316
02216
12816
23216
33316
03311
Stop Event
iter limit
saturated
iter limit
saturated
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.9MiB live, 0.9MiB allocated
Alt Table
Click to see full alt table
StatusAccuracyProgram
92.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))
Compiler

Compiled 16 to 13 computations (18.8% saved)

simplify3.0ms (0%)

Memory
4.0MiB live, 4.0MiB 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-diff7424
(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
12866
23266
33366
03351
Stop Event
iter limit
saturated
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

localize81.0ms (0.8%)

Memory
23.2MiB live, 58.7MiB allocated
Localize:

Found 4 expressions of interest:

NewMetricScoreProgram
accuracy0.171875
(*.f64 (/.f64 (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.25390625
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy0.25390625
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy4.663690444804084
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
Samples
71.0ms256×0valid
Compiler

Compiled 134 to 28 computations (79.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 60.0ms
ival-sin: 49.0ms (81% of total)
ival-pow2: 5.0ms (8.3% of total)
ival-div: 2.0ms (3.3% of total)
ival-mult: 2.0ms (3.3% of total)
ival-sqrt: 2.0ms (3.3% of total)
ival-add: 1.0ms (1.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series60.0ms (0.6%)

Memory
0.7MiB live, 36.8MiB 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
34.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))
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))
4.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))
3.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))

simplify307.0ms (3.1%)

Memory
-22.0MiB live, 220.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
03171402
110111353
238471261
377941261
080971188
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 (fma.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (*.f64 kx (/.f64 kx (sin.f64 ky))) (/.f64 #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)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 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 (sin.f64 th) #s(literal -1/2 binary64)) (*.f64 kx (/.f64 kx (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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (sin.f64 th) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.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 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #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 th)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))))) (fma.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (*.f64 kx (/.f64 kx (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 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/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 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (*.f64 kx kx) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(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)) (fma.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)) (fma.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))
(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 (fma.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (*.f64 ky (/.f64 ky (sin.f64 kx))) (/.f64 #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)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 ky (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 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))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (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 (fma.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (fma.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)))) #s(literal -1/12 binary64) (*.f64 (+.f64 (+.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 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 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 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 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))))
(fma.f64 (neg.f64 (pow.f64 ky #s(literal 3 binary64))) (+.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 (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)) (fma.f64 (+.f64 (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (+.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 (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)) (fma.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/12 binary64) (+.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/2 binary64) (+.f64 (+.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 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (-.f64 (/.f64 #s(literal -1/5040 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (*.f64 ky ky) (+.f64 (fma.f64 (*.f64 (sin.f64 kx) #s(literal 1/2 binary64)) (+.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 (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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) (*.f64 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)) (fma.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)) (fma.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))
(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))))) th) (*.f64 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (sin.f64 ky)))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 th th)) (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/120 binary64) (*.f64 th th) #s(literal -1/6 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))))) (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 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 #s(literal -1/5040 binary64) (*.f64 th th) #s(literal 1/120 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 (fma.f64 #s(literal -1/6 binary64) (*.f64 th th) #s(literal 1 binary64)) (sin.f64 ky)))) th)

rewrite159.0ms (1.6%)

Memory
1.4MiB live, 198.2MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01349
02249
16249
233849
3290249
0828434
Stop Event
iter limit
node limit
iter limit
Counts
6 → 294
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 (sqrt.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))))) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(*.f64 (sqrt.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))))) (sqrt.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))))))
(*.f64 (sqrt.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))))) (sqrt.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)))))
(*.f64 (sqrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (+.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (+.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (sqrt.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))))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.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/4 binary64)) #s(literal 2 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/4 binary64)) #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/4 binary64)) #s(literal 2 binary64)) (pow.f64 (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/4 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)) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 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)) (sqrt.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))))))
(*.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)) (sqrt.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)))))
(*.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 (pow.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) (+.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1/2 binary64)) (sqrt.f64 (+.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal 1/2 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/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 (pow.f64 (neg.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 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (pow.f64 (pow.f64 (neg.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(literal 1/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 (pow.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)))) #s(literal -1 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))))) (pow.f64 (pow.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)))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))))
(*.f64 (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)) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (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)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 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)))) (sqrt.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (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))))))
(*.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)))) (sqrt.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 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 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 (pow.f64 (hypot.f64 (sin.f64 ky) (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 (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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 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 binary64))) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 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 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.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))))))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (pow.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 (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)))
(*.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))) (pow.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(literal 1/2 binary64)))
(*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 1/2 binary64)) (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #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 binary64))
(pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(/.f64 (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (+.f64 (sin.f64 ky) (sin.f64 kx)))) (sqrt.f64 (-.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64)))) (sqrt.f64 (+.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 4 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 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 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 18 binary64)) (pow.f64 (sin.f64 kx) #s(literal 18 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 binary64)))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 6 binary64)))))
(/.f64 (sqrt.f64 (*.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 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 (/.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)))) #s(literal 2 binary64)) (pow.f64 (/.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)))) #s(literal 2 binary64)))) (sqrt.f64 (+.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 (sqrt.f64 (-.f64 (pow.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)))) #s(literal 3 binary64)) (pow.f64 (/.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)))) #s(literal 3 binary64)))) (sqrt.f64 (+.f64 (pow.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)))) #s(literal 2 binary64)) (+.f64 (pow.f64 (/.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)))) #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 (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 (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 (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 (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 (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 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 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))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (+.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (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 (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (*.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 18 binary64)) (pow.f64 (sin.f64 kx) #s(literal 18 binary64))) #s(literal 1 binary64))) (sqrt.f64 (*.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 6 binary64))) (-.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.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 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (sqrt.f64 (pow.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 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))) #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal -1 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 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64)))) (sqrt.f64 (*.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (+.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64)))) (sqrt.f64 (*.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 (pow.f64 (sin.f64 kx) #s(literal 6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 9 binary64)) (pow.f64 (sin.f64 ky) #s(literal 9 binary64))) (sqrt.f64 (*.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 (pow.f64 (sin.f64 kx) #s(literal 12 binary64)) (pow.f64 (sin.f64 ky) #s(literal 12 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 6 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 8 binary64)) (pow.f64 (sin.f64 ky) #s(literal 8 binary64)))) (sqrt.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 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 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 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)))) (*.f64 #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 (-.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))) (*.f64 #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 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 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 #s(literal 1 binary64) (sqrt.f64 (/.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal -1 binary64)) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 1 binary64))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (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)) (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 (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)) (sin.f64 kx))
(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)) (sin.f64 kx))
(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) (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) (neg.f64 (sin.f64 ky)))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(exp.f64 (neg.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(exp.f64 (neg.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))))
(exp.f64 (neg.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1/2 binary64))))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 1/4 binary64) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(exp.f64 (*.f64 (log.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)))
(exp.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky)))) #s(literal -1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 th)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.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) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (sin.f64 ky)))
(*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (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 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 ky)))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (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 (neg.f64 (sin.f64 ky)) (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th)))
(*.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))))
(pow.f64 (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)) #s(literal -1 binary64))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (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)))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))) #s(literal 2 binary64))
(/.f64 (*.f64 #s(literal -1 binary64) (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) #s(literal 1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 th ky))) (*.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(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)))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 ky))) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.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 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sqrt.f64 (sin.f64 ky))) (sqrt.f64 (sin.f64 ky)))
(*.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)) (pow.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64)) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)) #s(literal 1/4 binary64))) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (pow.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky)))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (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)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal 1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 ky))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 ky)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64))
(*.f64 (sin.f64 ky) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (*.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (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 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal 1 binary64))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (*.f64 #s(literal 1 binary64) (neg.f64 (sin.f64 ky))) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(/.f64 (/.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 ky) (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)))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky)))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(/.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 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))))
(neg.f64 (*.f64 #s(literal 1 binary64) (/.f64 (neg.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))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx))))
(exp.f64 (-.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (-.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64)) (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (-.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64))) #s(literal -1/2 binary64)) (neg.f64 (log.f64 (sin.f64 ky)))))
(exp.f64 (neg.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))))
(exp.f64 (+.f64 (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))) (log.f64 (sin.f64 ky))))
(exp.f64 (fma.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64) (log.f64 (sin.f64 ky))))
(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)) (neg.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))))))
(exp.f64 (+.f64 (log.f64 (sin.f64 ky)) (*.f64 (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx))) #s(literal -1 binary64))))
(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))))
(exp.f64 (-.f64 (log.f64 (sin.f64 ky)) (log.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) #s(literal -1 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 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 1/2 binary64)) (pow.f64 #s(literal 1/2 binary64) #s(literal 1/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 (sqrt.f64 (sin.f64 ky)) (sqrt.f64 (sin.f64 ky)))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 ky)))
(*.f64 #s(literal 1 binary64) (sin.f64 ky))
(*.f64 (sin.f64 ky) #s(literal 1 binary64))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sqrt.f64 (sin.f64 ky))))
(pow.f64 (sqrt.f64 (sin.f64 ky)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #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 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(neg.f64 (neg.f64 (sin.f64 ky)))
(sin.f64 ky)
(sqrt.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 ky)))
(exp.f64 (neg.f64 (neg.f64 (log.f64 (sin.f64 ky)))))
(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 (*.f64 (neg.f64 (log.f64 (sin.f64 ky))) #s(literal -1 binary64)))
(exp.f64 (log.f64 (sin.f64 ky)))
(*.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 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.f64 (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)) (sqrt.f64 (sin.f64 kx)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal 3/2 binary64)))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -1 binary64))
(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 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) #s(literal 1/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 (exp.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (exp.f64 (log.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))) (pow.f64 (cos.f64 kx) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (*.f64 #s(literal 1/8 binary64) (pow.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(-.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)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (sin.f64 kx))) #s(literal 4 binary64)))
(exp.f64 (*.f64 (log.f64 (exp.f64 #s(literal 2 binary64))) (log.f64 (sin.f64 kx))))
(exp.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) kx))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 1 binary64)) #s(literal 1/2 binary64))
(*.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 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) (sqrt.f64 (sin.f64 ky)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)) #s(literal 1 binary64)))
(*.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal 3/2 binary64)))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal 2 binary64)))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 #s(literal 1 binary64)) (log.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(pow.f64 (pow.f64 (exp.f64 #s(literal 2 binary64)) #s(literal 1 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #s(literal -1 binary64))
(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 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) #s(literal 1/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 (exp.f64 (log1p.f64 (neg.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64)))))) (exp.f64 (log.f64 #s(literal 2 binary64))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #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 ky #s(literal 2 binary64))) #s(literal 3 binary64)))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))) #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) (/.f64 #s(literal 2 binary64) (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64))))))
(-.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 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/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 (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 ky #s(literal 2 binary64)))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 ky #s(literal 2 binary64))) #s(literal 1/2 binary64))))

eval102.0ms (1%)

Memory
27.1MiB live, 111.7MiB allocated
Compiler

Compiled 9 221 to 1 717 computations (81.4% saved)

prune27.0ms (0.3%)

Memory
-7.3MiB live, 66.6MiB allocated
Pruning

23 alts after pruning (23 fresh and 0 done)

PrunedKeptTotal
New34223365
Fresh000
Picked101
Done000
Total34323366
Accuracy
100.0%
Counts
366 → 23
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
99.7%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
99.4%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
95.5%
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
83.8%
(*.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)))))
99.6%
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
72.6%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))
99.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))) (sin.f64 th))
47.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
81.7%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.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))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
81.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))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
54.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))
40.6%
(*.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))
33.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 kx)) ky) ky (sin.f64 kx)))) (sin.f64 th))
35.6%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
99.6%
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
99.5%
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
75.9%
(*.f64 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
25.2%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64))) (sin.f64 th))
32.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
53.2%
#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)))))))
32.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Compiler

Compiled 902 to 698 computations (22.6% saved)

simplify6.0ms (0.1%)

Memory
12.8MiB live, 12.8MiB allocated
Algorithm
egg-herbie
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
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
(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))
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
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
cost-diff0
(sin.f64 th)
cost-diff384
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
037277
062267
182267
292267
395267
095267
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
th
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(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)) (sin.f64 th))
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 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)) (*.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)
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(sin.f64 th)
th
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(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)) (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 ky) (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 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sin.f64 ky)
ky
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(sin.f64 kx)
kx
#s(literal 2 binary64)
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(/.f64 (sin.f64 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)) (*.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 (sin.f64 ky) th)))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (/.f64 #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))
(*.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)

localize102.0ms (1%)

Memory
5.7MiB live, 201.4MiB allocated
Localize:

Found 18 expressions of interest:

NewMetricScoreProgram
accuracy0.25390625
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy2.8619539147030686
(*.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))))))
accuracy4.82499906927976
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
accuracy26.306705485011456
#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.00390625
(sin.f64 th)
accuracy0.05078125
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.2109375
(/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.26791000976844204
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 ky))
accuracy0.171875
(*.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.25390625
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
accuracy4.663690444804084
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy29.032202892581967
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.00390625
(sin.f64 th)
accuracy43.49609641129244
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
accuracy0.00390625
(sin.f64 th)
accuracy0.05078125
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.140625
(/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))
accuracy0.16015625
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Samples
79.0ms256×0valid
Compiler

Compiled 561 to 66 computations (88.2% saved)

Precisions
Click to see histograms. Total time spent on operations: 51.0ms
ival-sin: 17.0ms (33.1% of total)
ival-mult: 8.0ms (15.6% of total)
ival-pow2: 8.0ms (15.6% of total)
ival-div: 7.0ms (13.6% of total)
ival-hypot: 5.0ms (9.7% of total)
ival-sqrt: 3.0ms (5.8% of total)
ival-add: 2.0ms (3.9% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series112.0ms (1.1%)

Memory
-35.7MiB live, 89.8MiB allocated
Counts
18 → 91
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
(/.f64 (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))
(*.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)
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(*.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)))
#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)
#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))
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) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 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))))))
(+ 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 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)))
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))))))))))))
(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)))))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(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))))
(/ (sin kx) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(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 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 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)))
(/ (* 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)))
(* th (sin ky))
(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 (+ 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 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
Calls

9 calls:

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

simplify276.0ms (2.8%)

Memory
25.3MiB live, 298.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
05563029
118222930
271152803
083972625
Stop Event
iter limit
node limit
Counts
91 → 89
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) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 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))))))
(+ 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 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)))
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))))))))))))
(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)))))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(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))))
(/ (sin kx) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(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 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 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)))
(/ (* 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)))
(* th (sin ky))
(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 (+ 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 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* -1/6 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* 1/120 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (* (pow th 2) (+ (* -1/6 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/5040 (* (pow th 2) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))))))
Outputs
(sin th)
(sin.f64 th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(fma.f64 (*.f64 (*.f64 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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #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 th)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.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 th)))
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.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) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (/.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) (/.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 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (*.f64 (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)) (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 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/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64)))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.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)) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #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)) (fma.f64 (*.f64 (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)) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 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)) (sin.f64 ky))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(+ 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 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 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/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 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (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 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(/ (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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.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 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 #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 th)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.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))))) (/.f64 (sin.f64 th) (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 (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) th) (*.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 (/.f64 th (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))) (*.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 th (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/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 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (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))) #s(literal -1/2 binary64))) (*.f64 kx kx) th)
(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)) (fma.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)) (fma.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))
(/ 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 kx (/.f64 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 (fma.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 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/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 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (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 #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)))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (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 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))
(* (* 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))))))
(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 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (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)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 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)))) (*.f64 (fma.f64 (*.f64 (sin.f64 kx) (sin.f64 th)) (fma.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))))) #s(literal -1/2 binary64) (*.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)))) #s(literal -1/12 binary64))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 (sin.f64 th) (sin.f64 kx))) ky)
(/ (sin kx) ky)
(/.f64 (sin.f64 kx) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) #s(literal -1/2 binary64) (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.f64 #s(literal 1/12 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)))) (*.f64 ky ky) (sin.f64 kx)) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(/.f64 (fma.f64 (fma.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) #s(literal -1/2 binary64) (fma.f64 (fma.f64 (/.f64 (+.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/3 binary64)) (sin.f64 kx)) #s(literal -1/12 binary64) (fma.f64 (/.f64 (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)) (sin.f64 kx)) #s(literal 1/2 binary64) (fma.f64 #s(literal 31/15120 binary64) (sin.f64 kx) (/.f64 #s(literal 7/720 binary64) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.f64 #s(literal 1/12 binary64) (sin.f64 kx))))) (*.f64 ky ky) (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)))) (*.f64 ky ky) (sin.f64 kx)) ky)
(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 (fma.f64 (/.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)) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #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)) (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 ky ky)) (/.f64 (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)) (sin.f64 kx)) (/.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)) (sin.f64 kx))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) 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 #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/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)) (fma.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/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.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)) (fma.f64 (+.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/2 binary64) (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 #s(literal -1/12 binary64) (+.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/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/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(/ (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 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.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 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.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 (*.f64 (/.f64 (*.f64 (sin.f64 th) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (*.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)) (*.f64 #s(literal 1/2 binary64) (*.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 (sin.f64 th) (sin.f64 kx))))
(/ (* ky th) (sin kx))
(*.f64 (/.f64 th (sin.f64 kx)) ky)
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ th (pow (sin kx) 3))) (* -1/6 (/ th (sin kx))))) (/ th (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (/.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 th (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/120 binary64) (sin.f64 kx))) (*.f64 (/.f64 th (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1/12 binary64))) (*.f64 ky ky) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 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)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 binary64) 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))))) (sin.f64 kx) (*.f64 (fma.f64 (*.f64 th (sin.f64 kx)) (fma.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))))) #s(literal -1/2 binary64) (*.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)))) #s(literal -1/12 binary64))) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 th (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky) (/.f64 th (sin.f64 kx))) ky)
(* ky th)
(*.f64 ky th)
(* ky (+ th (* -1/6 (* (pow ky 2) th))))
(*.f64 th (fma.f64 (pow.f64 ky #s(literal 3 binary64)) #s(literal -1/6 binary64) ky))
(* ky (+ th (* (pow ky 2) (+ (* -1/6 th) (* 1/120 (* (pow ky 2) th))))))
(*.f64 (fma.f64 (*.f64 th (fma.f64 #s(literal 1/120 binary64) (*.f64 ky ky) #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)))))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (*.f64 (*.f64 th (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64))) ky) ky (*.f64 #s(literal -1/6 binary64) th)) (*.f64 ky th))
(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)) (fma.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)) (fma.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))
(/ 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 ky (/.f64 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 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.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 (fma.f64 (*.f64 (sin.f64 kx) (fma.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 ky ky)) (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 #s(literal 1/2 binary64) (+.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 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)))
(* th (sin ky))
(*.f64 (sin.f64 ky) th)
(pow (sin ky) 2)
(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 th th) (*.f64 #s(literal -1/6 binary64) (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 (*.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)))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 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))))) (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 th th) (*.f64 #s(literal -1/6 binary64) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
(* th (+ 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)) (fma.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)) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) 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 (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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 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 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (+.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 th th) (*.f64 (*.f64 th th) #s(literal 1/120 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 (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 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) th)

rewrite149.0ms (1.5%)

Memory
3.2MiB live, 203.2MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
037200
062175
1194171
21082171
08130171
Stop Event
iter limit
node limit
iter limit
Counts
18 → 557
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(sin.f64 th)
(/.f64 (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))
(*.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)
(sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(*.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)))
#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)
#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))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (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)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (neg.f64 (sin.f64 th))) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.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))) (*.f64 (sin.f64 ky) #s(literal 1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sin.f64 th) #s(literal 1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (neg.f64 (sin.f64 ky)))) (*.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (sqrt.f64 #s(literal -1 binary64))) (*.f64 #s(literal 2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) (sqrt.f64 #s(literal -1 binary64))) (*.f64 #s(literal 2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (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 #s(literal 1 binary64) (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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))) (*.f64 #s(literal 1 binary64) (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 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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)) (*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (*.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (*.f64 (sin.f64 ky) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky)))) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(sin.f64 th)
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) #s(literal 1/4 binary64))) (/.f64 (pow.f64 (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/4 binary64))))
(*.f64 (/.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)) (sqrt.f64 (sin.f64 ky))) (/.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)) (sqrt.f64 (sin.f64 ky))))
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sqrt.f64 (sin.f64 ky))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 ky))))
(*.f64 (pow.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(*.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal 1 binary64))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(pow.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal 1 binary64))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))) (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))))
(/.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 (neg.f64 (sin.f64 ky)) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (*.f64 #s(literal -1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (*.f64 (neg.f64 (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 (*.f64 #s(literal -1 binary64) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (neg.f64 (sin.f64 ky)) (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 #s(literal -1 binary64) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (neg.f64 (sin.f64 ky)) (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 (*.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 (*.f64 (sin.f64 ky) #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 (*.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (*.f64 (sin.f64 ky) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (*.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (*.f64 (*.f64 (sin.f64 ky) #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 (*.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))) (*.f64 (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 (*.f64 #s(literal 1 binary64) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (*.f64 (sin.f64 ky) #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 ky) (sin.f64 kx)) #s(literal 2 binary64))))))
(/.f64 (*.f64 #s(literal 1 binary64) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (*.f64 (sin.f64 ky) #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 (*.f64 #s(literal 1 binary64) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (sin.f64 ky) (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 #s(literal 1 binary64) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (*.f64 (sin.f64 ky) (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 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (neg.f64 (sin.f64 ky))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 (sin.f64 ky) #s(literal 1 binary64))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky)))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (neg.f64 (sin.f64 ky))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (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) #s(literal 1 binary64))))
(/.f64 (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1 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)))) (neg.f64 (sin.f64 ky))))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal -1 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (neg.f64 (sin.f64 ky))))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1 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)))) (*.f64 (sin.f64 ky) #s(literal 1 binary64))))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1 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)))) (sin.f64 ky)))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (*.f64 (sin.f64 ky) #s(literal 1 binary64))))
(/.f64 (*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) #s(literal 1 binary64)) (*.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (sin.f64 ky)))
(/.f64 (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))))
(/.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (neg.f64 (sin.f64 ky))))
(/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (neg.f64 (sin.f64 ky)))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) #s(literal 1 binary64))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) #s(literal 1 binary64)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
(neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 ky))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(-.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(exp.f64 (-.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))) #s(literal 1/2 binary64)) (log.f64 (sin.f64 ky))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) #s(literal -1 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)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #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 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 #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 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (pow.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 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (pow.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(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #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 ky) (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))) (/.f64 #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 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (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 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.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))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (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 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #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 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #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 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 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 (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 (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))) #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 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (*.f64 #s(literal 1 binary64) (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (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 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (sqrt.f64 (*.f64 #s(literal 1 binary64) (-.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 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 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (*.f64 #s(literal 1 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))))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (*.f64 #s(literal 1 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 (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 ky) (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 ky) (sin.f64 kx)) #s(literal 2 binary64)))))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sqrt.f64 #s(literal -1 binary64)))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 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)))) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (pow.f64 (*.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 (sin.f64 ky) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal 1 binary64))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
(exp.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))) #s(literal 1/2 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.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))))))
(*.f64 (/.f64 (sin.f64 th) (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 (sin.f64 ky) (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 (/.f64 (sin.f64 ky) (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 (sin.f64 th) (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 (/.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 ky) #s(literal 1 binary64)))
(*.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (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 (sin.f64 th) (neg.f64 (sin.f64 ky))) (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.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 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (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))) (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (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 (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 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 #s(literal 1 binary64) (/.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 (/.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 ky) (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (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))))))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (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 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (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 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 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 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 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)) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64)))
(/.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 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 ky) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.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)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 ky) (sin.f64 th))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (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 #s(literal 1 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))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (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 (sqrt.f64 (sin.f64 ky)) (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 (*.f64 (sin.f64 ky) #s(literal 1 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 (neg.f64 (neg.f64 (sin.f64 ky))) (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 (pow.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 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sin.f64 ky))
(*.f64 (neg.f64 (sin.f64 ky)) (pow.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))))
(*.f64 #s(literal 1 binary64) (/.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) (pow.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 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (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 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
(/.f64 (sin.f64 ky) (*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64)))
(/.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)))))))
(-.f64 (/.f64 #s(literal 0 binary64) (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) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(-.f64 #s(literal 0 binary64) (/.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))))))
(-.f64 #s(literal 0 binary64) (/.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))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))) #s(literal -1 binary64)))
(*.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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1/2 binary64))
(pow.f64 (sin.f64 ky) #s(literal 1 binary64))
(sin.f64 ky)
(exp.f64 (log.f64 (sin.f64 ky)))
(*.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)))
(*.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)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.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 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 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)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal 1/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))) (/.f64 #s(literal 1 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))))))
(*.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 (pow.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))) #s(literal -1 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))) (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal 1/2 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 (neg.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))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.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)))) (neg.f64 (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))))))
(/.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)))))
(/.f64 #s(literal 1 binary64) (/.f64 (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 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (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)))) (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)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #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))))
(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 (/.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal 1 binary64)) (/.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sqrt.f64 (sin.f64 ky)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (/.f64 (sin.f64 th) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))))
(*.f64 (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (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)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 #s(literal 1 binary64) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (sin.f64 ky)))
(*.f64 (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (neg.f64 (sin.f64 ky)) #s(literal -1 binary64))))
(*.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (neg.f64 (sin.f64 th))) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th))) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (sin.f64 ky)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 ky) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (*.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))) (*.f64 (sin.f64 ky) #s(literal 1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sin.f64 th) #s(literal 1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(*.f64 (sin.f64 ky) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 ky))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 ky)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 ky) (sin.f64 th)))) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (neg.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 (*.f64 (sin.f64 th) (*.f64 (sin.f64 ky) #s(literal 1 binary64))) (*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (neg.f64 (sin.f64 ky)))) (*.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) (sqrt.f64 #s(literal -1 binary64))) (*.f64 #s(literal 2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) (sqrt.f64 #s(literal -1 binary64))) (*.f64 #s(literal 2 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 th ky)) (cos.f64 (+.f64 th ky))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal -1 binary64)) (*.f64 #s(literal 2 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (*.f64 (-.f64 (cos.f64 (-.f64 ky th)) (cos.f64 (+.f64 ky th))) #s(literal 1 binary64)) (*.f64 #s(literal 2 binary64) (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 #s(literal 1 binary64) (sin.f64 ky)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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))) (*.f64 #s(literal 1 binary64) (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 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(/.f64 (*.f64 (sin.f64 ky) #s(literal 1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (neg.f64 (neg.f64 (sin.f64 th))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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)) (*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 ky) (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky))))
(/.f64 (neg.f64 (sin.f64 ky)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (*.f64 #s(literal 1 binary64) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (neg.f64 (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (*.f64 (sin.f64 ky) (neg.f64 (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (*.f64 (sin.f64 ky) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (pow.f64 (sin.f64 ky) #s(literal -1 binary64)))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (neg.f64 (sin.f64 ky)))) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (neg.f64 (sin.f64 th))) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (neg.f64 (sin.f64 th)) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (sin.f64 th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (neg.f64 (neg.f64 (sin.f64 th)))) (neg.f64 (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 (sin.f64 th) #s(literal 1 binary64)) (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 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.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)))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(-.f64 #s(literal 0 binary64) (/.f64 (sin.f64 th) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th))) #s(literal -1 binary64)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 th (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 ky) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (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 th (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 ky) th)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (*.f64 (*.f64 (sin.f64 ky) th) #s(literal 1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 th (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 (sin.f64 ky) th))
(*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)
(*.f64 (sin.f64 ky) (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 th (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 ky) th))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (*.f64 (sin.f64 ky) th) #s(literal 1 binary64))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (neg.f64 (*.f64 (sin.f64 ky) th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 ky) th)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 (*.f64 (*.f64 (sin.f64 ky) th) #s(literal 1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 ky) th))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (*.f64 (sin.f64 ky) th) #s(literal 1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (*.f64 (sin.f64 ky) th)))
(/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky)))
(*.f64 (sin.f64 ky) th)
(*.f64 th (sin.f64 ky))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/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))) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(*.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1 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 -1/2 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 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 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (-.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) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 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) (/.f64 (pow.f64 (cos.f64 kx) #s(literal 2 binary64)) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.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 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/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 #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) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/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 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 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 (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 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 (-.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 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 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 (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 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 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.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/2 binary64)) (pow.f64 (pow.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(literal -1/2 binary64)))
(*.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/2 binary64)) (pow.f64 (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 binary64)) #s(literal -1/2 binary64)))
(*.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/2 binary64)) (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal -1/2 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 (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)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (*.f64 #s(literal -1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (*.f64 #s(literal -1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) (pow.f64 #s(literal 1 binary64) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64)))
(pow.f64 (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/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 (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))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -1 binary64))
(/.f64 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (neg.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 (/.f64 #s(literal -1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(/.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 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))) #s(literal -1/2 binary64)))
(exp.f64 (*.f64 (log.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1 binary64)) #s(literal 1/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))) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(*.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(*.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -1/2 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(*.f64 (sin.f64 ky) (sin.f64 ky))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 ky)))
(pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1 binary64))
(pow.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) #s(literal 1 binary64))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) (*.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) ky)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (neg.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 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal 4 binary64))
(/.f64 (-.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) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #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 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 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 binary64) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (/.f64 (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/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)) #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 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/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 #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) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))

eval127.0ms (1.3%)

Memory
-5.8MiB live, 197.4MiB allocated
Compiler

Compiled 20 373 to 2 470 computations (87.9% saved)

prune47.0ms (0.5%)

Memory
-19.0MiB live, 103.2MiB allocated
Pruning

45 alts after pruning (42 fresh and 3 done)

PrunedKeptTotal
New64436680
Fresh12618
Picked235
Done000
Total65845703
Accuracy
100.0%
Counts
703 → 45
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
46.7%
(/.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)))))
99.7%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
47.9%
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
40.6%
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky)))
35.5%
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
99.6%
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
99.5%
(/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
35.9%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
32.7%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
99.6%
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
99.4%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
47.8%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)) (sin.f64 th)))
46.6%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
72.6%
(*.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))
40.5%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
32.0%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
35.5%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
72.6%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))
47.6%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))) (sin.f64 th))
47.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
27.6%
(*.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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
37.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
37.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 ky ky))))) (sin.f64 th))
54.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))
31.4%
(*.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))
35.6%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
47.9%
(*.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))))))
25.2%
(*.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))
32.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
54.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
58.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
58.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
58.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
53.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))))
53.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))))
49.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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
26.9%
#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)))))
20.1%
#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)))))
32.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
15.6%
#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)))
19.6%
#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 (/.f64 th (sin.f64 kx)) ky)))
19.3%
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
19.4%
#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)))
Compiler

Compiled 2 160 to 1 565 computations (27.5% saved)

simplify10.0ms (0.1%)

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

Found 20 expressions of interest:

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

IterNodesCost
048337
080332
1106328
2138328
3174328
4194328
5200328
6200328
7219328
8219328
0219328
Stop Event
iter limit
saturated
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)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(pow.f64 th #s(literal 3 binary64))
th
#s(literal 3 binary64)
#s(literal -1/6 binary64)
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(sin.f64 th)
th
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 ky)
ky
(*.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 (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 ky)
ky
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (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 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(sin.f64 ky)
ky
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
#s(literal 1 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 #s(literal 1 binary64) (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)))
(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 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)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
#s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)
(pow.f64 th #s(literal 3 binary64))
th
#s(literal 3 binary64)
#s(literal -1/6 binary64)
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(sin.f64 th)
th
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 ky)
ky
(*.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 th) (sin.f64 ky)) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(/.f64 (sin.f64 ky) (sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 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)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(sqrt.f64 (fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx))))
(+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(fma.f64 (sin.f64 ky) (sin.f64 ky) #s(approx (pow (sin kx) 2) (*.f64 kx kx)))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(*.f64 kx kx)
kx
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(literal 2 binary64)
(sin.f64 th)
th
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))) (sin.f64 th))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 ky))
(sin.f64 ky)
ky
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
#s(literal 1 binary64)
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 #s(literal 1 binary64) (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)))
(sin.f64 kx)
kx
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
(sin.f64 th)
th

localize124.0ms (1.2%)

Memory
-8.8MiB live, 227.5MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.234375
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
accuracy0.23828125
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy4.82499906927976
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
accuracy29.032202892581967
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.171875
(*.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))
accuracy0.25390625
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
accuracy4.663690444804084
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
accuracy29.66312642096461
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
accuracy0.00390625
(sin.f64 th)
accuracy0.2109375
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
accuracy0.26791000976844204
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
accuracy43.14033977494465
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))
accuracy0.0
(pow.f64 th #s(literal 3 binary64))
accuracy0.08203125
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
accuracy26.449710000584584
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
accuracy43.49609641129244
#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)))
accuracy0.00390625
(sin.f64 th)
accuracy0.05078125
(hypot.f64 (sin.f64 ky) (sin.f64 kx))
accuracy0.13671875
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
accuracy0.171875
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
Samples
92.0ms256×0valid
Compiler

Compiled 672 to 84 computations (87.5% saved)

Precisions
Click to see histograms. Total time spent on operations: 69.0ms
ival-sin: 17.0ms (24.8% of total)
ival-div: 13.0ms (19% of total)
ival-mult: 11.0ms (16.1% of total)
ival-hypot: 8.0ms (11.7% of total)
const: 4.0ms (5.8% of total)
ival-pow2: 4.0ms (5.8% of total)
ival-add: 3.0ms (4.4% of total)
ival-sqrt: 3.0ms (4.4% of total)
ival-pow: 3.0ms (4.4% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series24.0ms (0.2%)

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

9 calls:

TimeVariablePointExpression
4.0ms
th
@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) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (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)))) (* (/ (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) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (* (/ (sin ky) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (sin th)) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))
3.0ms
th
@-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) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (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)))) (* (/ (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) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (* (/ (sin ky) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (sin th)) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))
2.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) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (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)))) (* (/ (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) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (* (/ (sin ky) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (sin th)) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))
2.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) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (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)))) (* (/ (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) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (* (/ (sin ky) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (sin th)) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))
2.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) (+ (* (pow th 3) -1/6) th) (pow th 3) (* (/ (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)))) (* (/ (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) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (* (/ (sin ky) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))))) (sin th)) (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (pow (sin kx) 2) (pow (sin ky) 2) (pow (sin ky) 2) (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))

simplify242.0ms (2.4%)

Memory
17.1MiB live, 215.3MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04632551
114992448
259872351
082632221
Stop Event
iter limit
node limit
Counts
84 → 82
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))))))
(/ (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)))
(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)))
(/ 1 (pow (sin ky) 2))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(* (* (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)))
(* (sin th) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(pow (sin kx) 2)
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(/ (* ky (sin th)) (sin kx))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (pow ky 2) (+ (* -1/2 (* (sin kx) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))))) (+ (* -1/12 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* -1/240 (/ (sin th) (pow (sin kx) 3))) (* -1/5040 (/ (sin th) (sin kx)))))))))))))) (/ (sin th) (sin kx))))
(/ ky (sin kx))
(* ky (+ (* -1 (* (pow ky 2) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* 1/12 (/ 1 (pow (sin kx) 3)))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
(* ky (+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/120 (/ 1 (sin kx))) (+ (* 1/12 (/ 1 (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))))) (* (pow ky 2) (- (+ (* -1/2 (* (sin kx) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6)))) (pow (sin kx) 2))) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8))))))) (* -1/12 (* (sin kx) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (+ (* 1/5040 (/ 1 (sin kx))) (* 1/240 (/ 1 (pow (sin kx) 3)))))))))) (+ (* 1/6 (/ 1 (sin kx))) (* 1/2 (/ 1 (pow (sin kx) 3)))))) (/ 1 (sin kx))))
ky
(* ky (+ 1 (* -1/6 (pow ky 2))))
(* ky (+ 1 (* (pow ky 2) (- (* 1/120 (pow ky 2)) 1/6))))
(* ky (+ 1 (* (pow ky 2) (- (* (pow ky 2) (+ 1/120 (* -1/5040 (pow ky 2)))) 1/6))))
(sin kx)
(+ (sin kx) (* 1/2 (/ (pow ky 2) (sin kx))))
(+ (sin kx) (* (pow ky 2) (+ (* -1/2 (/ (* (pow ky 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2))))) (sin kx))) (* 1/2 (/ 1 (sin kx))))))
(+ (sin kx) (* (pow ky 2) (+ (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (* 1/2 (/ (* (pow ky 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2))))) (sin kx))))) (* 1/2 (/ 1 (sin kx))))))
(/ (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)))
(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 (pow (sin kx) 2))
(+ (* -1 (/ (pow ky 2) (pow (sin kx) 4))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6)))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6))))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(pow (sin ky) 2)
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (pow th 2) (+ (* -1/5040 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))))
th
(* th (+ 1 (* -1/6 (pow th 2))))
(* th (+ 1 (* (pow th 2) (- (* 1/120 (pow th 2)) 1/6))))
(* th (+ 1 (* (pow th 2) (- (* (pow th 2) (+ 1/120 (* -1/5040 (pow th 2)))) 1/6))))
(pow th 3)
(* 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)))))))))))
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 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 (fma.f64 (*.f64 #s(literal 1/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 (*.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) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(fma.f64 (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #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 th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.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 th)))
1
#s(literal 1 binary64)
(+ 1 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) #s(literal -1/2 binary64) #s(literal 1 binary64))
(+ 1 (* (pow kx 2) (- (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 #s(literal 1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (/.f64 #s(literal 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 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/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 (*.f64 (*.f64 kx kx) #s(literal -1/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 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx kx) #s(literal 1 binary64))
(sin ky)
(sin.f64 ky)
(+ (sin ky) (* 1/2 (/ (pow kx 2) (sin ky))))
(fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))
(+ (sin ky) (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (sin ky))) (* 1/2 (/ 1 (sin ky))))))
(fma.f64 (fma.f64 (/.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)) (sin.f64 ky)) (*.f64 kx kx) (/.f64 #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)) (fma.f64 (*.f64 (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)) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 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)) (sin.f64 ky))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))
(/ (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 (fma.f64 (*.f64 #s(literal 1/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)) (sin.f64 ky)) (/.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)))
(+ (* (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 (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 ky) #s(literal 3 binary64))) kx) kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (*.f64 (sin.f64 ky) (fma.f64 #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 th)) (*.f64 (*.f64 (*.f64 kx kx) #s(literal -1/2 binary64)) (*.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))))) (/.f64 (sin.f64 th) (sin.f64 ky))))
(pow kx 2)
(*.f64 kx kx)
(* (pow kx 2) (+ 1 (* -1/3 (pow kx 2))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 kx kx))
(* (pow kx 2) (+ 1 (* (pow kx 2) (- (* 2/45 (pow kx 2)) 1/3))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.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)) (fma.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))
(/ 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 kx (/.f64 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 (fma.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 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/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 (*.f64 (*.f64 kx kx) #s(literal -1/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 #s(literal -1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(/ 1 (pow (sin ky) 2))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))
(+ (* -1 (/ (pow kx 2) (pow (sin ky) 4))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (neg.f64 kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6)))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (fma.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx) (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1 (* (pow kx 2) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8)))))) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (/ 1 (pow (sin ky) 6))))) (/ 1 (pow (sin ky) 4)))) (/ 1 (pow (sin ky) 2)))
(fma.f64 (fma.f64 (-.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal 1/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 (+.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 kx kx) (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(* (* (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))
(* (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))
(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)))))
(/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(/.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 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (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)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 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)))) (*.f64 (fma.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (fma.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))))) #s(literal -1/2 binary64) (*.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)))) #s(literal -1/12 binary64))) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 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))))
(fma.f64 (neg.f64 (pow.f64 ky #s(literal 3 binary64))) (+.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 (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)) (fma.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/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.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)) (fma.f64 (+.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/2 binary64) (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 #s(literal -1/12 binary64) (+.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/5040 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/240 binary64) (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 #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/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/5040 binary64) (*.f64 ky ky) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(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 (fma.f64 (/.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)) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #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)) (fma.f64 (*.f64 (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)) (*.f64 ky (/.f64 ky (sin.f64 kx)))) #s(literal 1/2 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)) (sin.f64 kx))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)) ky) 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 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.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 (*.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)))
(+ (* (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 (*.f64 (/.f64 (*.f64 #s(literal -1/2 binary64) (sin.f64 th)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) ky) ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (*.f64 (sin.f64 kx) (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (*.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)) (*.f64 #s(literal 1/2 binary64) (*.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 (sin.f64 th) (sin.f64 kx))))
(pow ky 2)
(*.f64 ky ky)
(* (pow ky 2) (+ 1 (* -1/3 (pow ky 2))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (*.f64 ky ky))
(* (pow ky 2) (+ 1 (* (pow ky 2) (- (* 2/45 (pow ky 2)) 1/3))))
(fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.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)) (fma.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))
(/ 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 ky (/.f64 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 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.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 (fma.f64 (*.f64 (sin.f64 kx) (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (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 #s(literal 1/2 binary64) (+.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 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 (pow (sin kx) 2))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(+ (* -1 (/ (pow ky 2) (pow (sin kx) 4))) (/ 1 (pow (sin kx) 2)))
(fma.f64 (neg.f64 ky) (/.f64 ky (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6)))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(fma.f64 (fma.f64 (+.f64 (/.f64 #s(literal 1 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 ky ky) (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(+ (* (pow ky 2) (- (* (pow ky 2) (+ (* -1 (* (pow ky 2) (+ (* 2/45 (/ 1 (pow (sin kx) 4))) (+ (* 2/3 (/ 1 (pow (sin kx) 6))) (/ 1 (pow (sin kx) 8)))))) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (/ 1 (pow (sin kx) 6))))) (/ 1 (pow (sin kx) 4)))) (/ 1 (pow (sin kx) 2)))
(fma.f64 (fma.f64 (-.f64 (+.f64 (/.f64 #s(literal 1 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 (+.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 ky ky))) (*.f64 ky ky) (/.f64 #s(literal -1 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (*.f64 ky ky) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(pow (sin ky) 2)
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
(* (* th (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))
(*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))
(* th (+ (* -1/6 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))))
(*.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky))) th)
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (*.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)))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 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))))) (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 th th) #s(literal -1/6 binary64) #s(literal 1 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))))) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
th
(* 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)) (fma.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)) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th)
(pow th 3)
(pow.f64 th #s(literal 3 binary64))
(* 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 (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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 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 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (+.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (*.f64 (*.f64 th th) (*.f64 (*.f64 th th) #s(literal 1/120 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 (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 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64))))) 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 (* (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)))

rewrite132.0ms (1.3%)

Memory
-6.9MiB live, 239.8MiB allocated
Iterations

Useful iterations: 1 (0.0ms)

IterNodesCost
048270
080265
1250252
21431252
09350252
Stop Event
iter limit
node limit
iter limit
Counts
23 → 522
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)) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(pow.f64 th #s(literal 3 binary64))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(sin.f64 th)
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
(sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
#s(approx (pow (sin kx) 2) (*.f64 kx kx))
(pow.f64 (sin.f64 ky) #s(literal 2 binary64))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
Outputs
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th)))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 kx) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))) #s(literal -1 binary64)))
(*.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)))
(*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 kx)))
(*.f64 #s(literal 1 binary64) (sin.f64 kx))
(*.f64 (sin.f64 kx) #s(literal 1 binary64))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #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 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (sin.f64 kx) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sin.f64 kx)))
(sin.f64 kx)
(sin.f64 ky)
(-.f64 #s(literal 0 binary64) (*.f64 (sin.f64 kx) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx)))
(exp.f64 (log.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (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 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (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)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #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 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 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #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 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 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) kx)))))) #s(literal 2 binary64))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (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) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))
#s(approx (sin th) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))
(*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))
(*.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
(*.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))))))
(*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)))
(*.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(*.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (pow.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (fma.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (*.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))))
(/.f64 (neg.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))))) (neg.f64 (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)))) (neg.f64 (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (*.f64 th th))) (*.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(/.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) (neg.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.f64 (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 th (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)))) (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) (fma.f64 #s(literal -1/216 binary64) (pow.f64 th #s(literal 9 binary64)) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3/2 binary64))) (pow.f64 th #s(literal 3/2 binary64)) th)
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) (*.f64 th th) th)
(fma.f64 (pow.f64 th #s(literal 3/2 binary64)) (*.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal -1/6 binary64)) th)
(fma.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (pow.f64 (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
(fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 th (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th)
(-.f64 (/.f64 (*.f64 th th) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))
(-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
(+.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)) (neg.f64 (/.f64 (*.f64 th th) (-.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th))))
(+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)
(+.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))
(*.f64 (pow.f64 th #s(literal 3/2 binary64)) (pow.f64 th #s(literal 3/2 binary64)))
(*.f64 (*.f64 th th) th)
(*.f64 th (*.f64 th th))
(pow.f64 (exp.f64 #s(literal 3 binary64)) (log.f64 th))
(pow.f64 (pow.f64 th #s(literal 3/2 binary64)) #s(literal 2 binary64))
(pow.f64 (*.f64 th th) #s(literal 3/2 binary64))
(pow.f64 th #s(literal 3 binary64))
(exp.f64 (fma.f64 (log.f64 th) #s(literal 3/2 binary64) (*.f64 (log.f64 th) #s(literal 3/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 th) #s(literal 3/2 binary64)) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 th #s(literal 3/2 binary64))) #s(literal 2 binary64)))
(exp.f64 (*.f64 (log.f64 (*.f64 th th)) #s(literal 3/2 binary64)))
(exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 kx) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 (*.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 kx) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(pow.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th)))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 th)) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (sin.f64 th) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)))
(pow.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 th)))
(*.f64 #s(literal 1 binary64) (sin.f64 th))
(*.f64 (sin.f64 th) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sin.f64 th)))
(sin.f64 th)
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 th)))
(*.f64 #s(literal -1 binary64) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal 1 binary64))
#s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))
(/.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal 1 binary64))
(neg.f64 (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))) (sin.f64 kx))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))) (sin.f64 th))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 th)))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (sin.f64 kx)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (sin.f64 kx))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (sin.f64 kx))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))))) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) #s(literal 1 binary64))
(pow.f64 (exp.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))) #s(literal 1/2 binary64))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #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 kx kx))) #s(literal 1/2 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) (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 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 3 binary64))))) (sqrt.f64 (neg.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64))))))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))))))
(/.f64 (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)))))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))) #s(literal -1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 2 binary64)))) (hypot.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 kx kx)) #s(literal 3/2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))) #s(literal -1/2 binary64)))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) #s(literal 1 binary64))
(neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))
(-.f64 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx))))))
(exp.f64 (*.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 kx kx)))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (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 (sqrt.f64 (sin.f64 kx)) (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 (/.f64 (sin.f64 kx) (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 #s(literal 1 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))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (/.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sqrt.f64 (sin.f64 kx)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (*.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 1 binary64))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sin.f64 kx))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 kx) (pow.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 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 1 binary64))
(/.f64 (neg.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))) #s(literal -1 binary64))
(/.f64 (*.f64 (sin.f64 kx) #s(literal -1 binary64)) (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 kx)) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 1 binary64))
(/.f64 (pow.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 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (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 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(-.f64 (/.f64 #s(literal 0 binary64) (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 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (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 kx)) (*.f64 (*.f64 #s(literal -1/2 binary64) (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64))))
(exp.f64 (fma.f64 #s(literal -1/2 binary64) (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (log.f64 (sin.f64 kx))))
(exp.f64 (+.f64 (log.f64 (sin.f64 kx)) (*.f64 #s(literal -1/2 binary64) (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (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 (sin.f64 kx) (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 (/.f64 (sin.f64 kx) (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 (sin.f64 th) (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 (/.f64 (sin.f64 th) #s(literal 1 binary64)) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (*.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (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 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (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 kx))) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 kx))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (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 kx)) (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 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (/.f64 (sin.f64 th) #s(literal 1 binary64)))
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (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 (sin.f64 th) (sin.f64 kx)))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (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 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sin.f64 th)))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (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) (neg.f64 (sin.f64 kx)))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 (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 kx)) (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 kx))) (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 kx))) (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 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.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 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(*.f64 (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 -1 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 -1 binary64)))
(*.f64 (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal -1/2 binary64)) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal -1/2 binary64)) (pow.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))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 #s(literal -1 binary64) #s(literal -1/2 binary64)) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 #s(literal 1 binary64) #s(literal -1/2 binary64)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.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)))
(*.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)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.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 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 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)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal 1/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))) (/.f64 #s(literal 1 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))))))
(*.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 (pow.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))) #s(literal -1 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))) (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (pow.f64 #s(literal 1 binary64) #s(literal -1/2 binary64)))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(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 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 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/2 binary64)) #s(literal -1 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 binary64)) #s(literal -1/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 (neg.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))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.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)))) (neg.f64 (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))))))
(/.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 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sqrt.f64 #s(literal -1 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)))))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (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 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (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)))) (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)))))
(/.f64 #s(literal 1 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)))
(neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #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 #s(literal 0 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(exp.f64 (neg.f64 (*.f64 #s(literal -1/2 binary64) (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(exp.f64 (*.f64 (neg.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)))
(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)))
(exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)))
#s(approx (pow (sin ky) 2) (*.f64 kx kx))
(*.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/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))) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(*.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1 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 -1/2 binary64))
(*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1/2 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 binary64))
(*.f64 (sin.f64 kx) (sin.f64 kx))
(pow.f64 (exp.f64 #s(literal 2 binary64)) (log.f64 (sin.f64 kx)))
(pow.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 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 #s(literal 1/4 binary64) (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))
(/.f64 (-.f64 #s(literal 1/4 binary64) (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))) (-.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) (*.f64 #s(literal 1/2 binary64) (*.f64 #s(literal -1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))))))
(/.f64 (+.f64 #s(literal 1/8 binary64) (pow.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (-.f64 (*.f64 (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))) (*.f64 #s(literal 1/2 binary64) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/4 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)))) (neg.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(/.f64 (neg.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))) (neg.f64 (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(/.f64 (neg.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))))) #s(literal 2 binary64))
(/.f64 (-.f64 #s(literal 2 binary64) (*.f64 #s(literal 2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal 4 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 ky kx)) (cos.f64 (+.f64 ky kx))) #s(literal 2 binary64))
(/.f64 (-.f64 (cos.f64 (-.f64 kx ky)) (cos.f64 (+.f64 kx ky))) #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 ky) #s(literal 2 binary64)))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (neg.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx)))) #s(literal -2 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 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) (/.f64 (pow.f64 (cos.f64 ky) #s(literal 2 binary64)) (-.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)))))
(/.f64 #s(literal 1 binary64) (/.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 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.f64 (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(-.f64 (/.f64 #s(literal 1/4 binary64) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (pow.f64 (cos.f64 ky) #s(literal 2 binary64))))
(-.f64 (/.f64 #s(literal 1/8 binary64) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (/.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (+.f64 #s(literal 1/4 binary64) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))))
(-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/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 #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) (neg.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 (pow.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))) #s(literal -1 binary64))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.f64 (sqrt.f64 (pow.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))) #s(literal -1 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)))))
(*.f64 (sqrt.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64))) (sqrt.f64 (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 (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 -1 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 -1 binary64)))
(*.f64 (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 1 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 1 binary64)))
(*.f64 (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal 1/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 (pow.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))) #s(literal -1 binary64)) #s(literal 1/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)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) #s(literal 1/2 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/2 binary64)) #s(literal 1/2 binary64)))
(*.f64 (pow.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))) #s(literal -1/2 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal -1/2 binary64)))
(*.f64 (pow.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))) #s(literal -1/2 binary64)) (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal -1/2 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)))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (/.f64 #s(literal 1 binary64) (sqrt.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sqrt.f64 #s(literal -1 binary64)) (pow.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (pow.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (pow.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 #s(literal 1 binary64) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 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)))
(pow.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64))) #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 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal -1 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/2 binary64)) #s(literal 1 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 binary64)) #s(literal 1/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 (neg.f64 (sqrt.f64 #s(literal -1 binary64))) (neg.f64 (sqrt.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (sqrt.f64 #s(literal -1 binary64)) (sqrt.f64 (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(neg.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(sqrt.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(fabs.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(exp.f64 (neg.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (*.f64 #s(literal -1/2 binary64) (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal 1 binary64)))
(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)))
(exp.f64 (*.f64 #s(literal -1/2 binary64) (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (pow.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))) #s(literal -1 binary64)) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.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))) #s(literal -1 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(*.f64 (pow.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))) #s(literal -1 binary64)) (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.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))) #s(literal -1 binary64)) (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 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (pow.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))) #s(literal -1 binary64)))
(*.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))) (pow.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))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.f64 (pow.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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)))
(pow.f64 (*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #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))))) #s(literal -1 binary64))
(pow.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64))) #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/2 binary64))
(pow.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal -2 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/2 binary64)) #s(literal 2 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 binary64)) #s(literal 1 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64))
(/.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (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)))))
(/.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)))) (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)))))
(/.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 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))
(/.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 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(neg.f64 (/.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(sqrt.f64 (*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64))))
(-.f64 (/.f64 #s(literal 1/2 binary64) (-.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)))) (/.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (-.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)))))
(-.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (-.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)))) (/.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (-.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)))))
(-.f64 (/.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))) (+.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)))) (/.f64 (*.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (+.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)))))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(exp.f64 (neg.f64 (log.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))

eval133.0ms (1.3%)

Memory
-4.5MiB live, 257.2MiB allocated
Compiler

Compiled 21 263 to 2 746 computations (87.1% saved)

prune109.0ms (1.1%)

Memory
8.6MiB live, 217.3MiB allocated
Pruning

65 alts after pruning (59 fresh and 6 done)

PrunedKeptTotal
New71822740
Fresh03737
Picked235
Done033
Total72065785
Accuracy
100.0%
Counts
785 → 65
Alt Table
Click to see full alt table
StatusAccuracyProgram
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
46.7%
(/.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)))))
99.7%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
47.9%
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
40.6%
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky)))
35.5%
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
99.6%
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
99.5%
(/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
35.9%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
32.7%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
99.6%
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
32.0%
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
99.4%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
47.8%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)) (sin.f64 th)))
46.6%
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
23.8%
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
72.6%
(*.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))
40.5%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
32.0%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
35.5%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
72.6%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))
39.2%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (sin.f64 th))
42.4%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) (sin.f64 th))
31.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
35.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
47.9%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
27.6%
(*.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 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
37.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
37.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 ky ky))))) (sin.f64 th))
54.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))
22.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
31.4%
(*.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))
35.6%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
10.0%
(*.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
35.5%
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
23.8%
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
35.5%
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
32.0%
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
47.9%
(*.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))))))
25.2%
(*.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))
32.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
54.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
58.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
58.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
58.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
53.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))))
53.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))))
49.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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
26.9%
#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)))))
20.1%
#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)))))
32.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
15.6%
#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)))
19.6%
#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 (/.f64 th (sin.f64 kx)) ky)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
19.3%
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
18.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
12.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
7.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
Compiler

Compiled 3 204 to 2 339 computations (27% saved)

simplify12.0ms (0.1%)

Memory
-13.9MiB live, 24.2MiB allocated
Algorithm
egg-herbie
Localize:

Found 20 expressions of interest:

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

Useful iterations: 0 (0.0ms)

IterNodesCost
049342
080319
1111313
2150308
3201308
4221308
5257308
6259308
0259305
Stop Event
iter limit
saturated
iter limit
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(sin.f64 th)
th
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(literal 1 binary64)
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
#s(literal -1/6 binary64)
(*.f64 th th)
th
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(sin.f64 th)
th
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(/.f64 (sin.f64 kx) ky)
(sin.f64 kx)
kx
ky
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
(sin.f64 ky)
ky
(/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))
#s(literal 1 binary64)
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
(sin.f64 th)
th
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))
(sqrt.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)))
(sin.f64 kx)
kx
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
ky
(sin.f64 ky)
Outputs
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 th))
(sin.f64 th)
th
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))
#s(literal 1 binary64)
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
(sin.f64 ky)
ky
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(sin.f64 kx)
kx
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th 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) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
#s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
#s(literal -1/6 binary64)
(*.f64 th th)
th
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(sin.f64 th)
th
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(/.f64 (sin.f64 kx) ky)
(sin.f64 kx)
kx
ky
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (*.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 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
(*.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 ky)
ky
(/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))
#s(literal 1 binary64)
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (sin.f64 kx))
(sin.f64 kx)
kx
(sin.f64 th)
th
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 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)))))
(sin.f64 th)
th
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))
(sqrt.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)))
(sin.f64 kx)
kx
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.f64 ky ky)
ky
(sin.f64 ky)

localize180.0ms (1.8%)

Memory
23.1MiB live, 330.6MiB allocated
Localize:

Found 20 expressions of interest:

NewMetricScoreProgram
accuracy0.16015625
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
accuracy0.21484375
(fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
accuracy4.663690444804084
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
accuracy29.032202892581967
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
accuracy0.13671875
(/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
accuracy0.171875
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
accuracy0.234375
(/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))
accuracy43.14253772586371
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))
accuracy0.00390625
(sin.f64 th)
accuracy0.09375
(/.f64 (sin.f64 kx) ky)
accuracy0.16015625
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
accuracy44.775413075380555
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
accuracy0.03515625
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
accuracy0.16015625
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
accuracy26.449710000584584
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
accuracy43.49609641129244
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
accuracy0.05078125
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
accuracy0.13671875
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
accuracy0.16015625
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
accuracy0.1640625
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
Samples
151.0ms256×0valid
Compiler

Compiled 648 to 90 computations (86.1% saved)

Precisions
Click to see histograms. Total time spent on operations: 111.0ms
ival-div: 48.0ms (43.4% of total)
ival-sin: 20.0ms (18.1% of total)
ival-mult: 14.0ms (12.7% of total)
ival-hypot: 10.0ms (9% of total)
const: 6.0ms (5.4% of total)
ival-sqrt: 5.0ms (4.5% of total)
ival-pow2: 4.0ms (3.6% of total)
ival-add: 3.0ms (2.7% of total)
ival-assert: 0.0ms (0% of total)
ival-true: 0.0ms (0% of total)
exact: 0.0ms (0% of total)

series26.0ms (0.3%)

Memory
17.1MiB live, 54.8MiB allocated
Counts
23 → 78
Calls
Call 1
Inputs
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(sin.f64 th)
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 th th)
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(/.f64 (sin.f64 kx) ky)
(/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(sin.f64 ky)
(/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (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)))
Outputs
1
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(+ 1 (* -1/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 ky)
(* kx (+ (* -1/6 (/ (pow kx 2) ky)) (/ 1 ky)))
(* kx (+ (* (pow kx 2) (- (* 1/120 (/ (pow kx 2) ky)) (* 1/6 (/ 1 ky)))) (/ 1 ky)))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/5040 (/ (pow kx 2) ky)) (* 1/120 (/ 1 ky)))) (* 1/6 (/ 1 ky)))) (/ 1 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))))))
(/ 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)))
(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))
(* (/ 1 (sin ky)) (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)))))
(/ (sin kx) ky)
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) 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))))
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))))))
(/ 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)))
(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 kx) 2)
(+ (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))
(* (* 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/6 (pow th 2))
(pow th 2)
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Calls

9 calls:

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

simplify176.0ms (1.8%)

Memory
-12.0MiB live, 196.4MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
04472186
114232129
254332003
086461876
Stop Event
iter limit
node limit
Counts
78 → 76
Calls
Call 1
Inputs
1
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(+ 1 (* (pow kx 2) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(+ 1 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(sin th)
(+ (sin th) (* -1/2 (/ (* (pow kx 2) (sin th)) (pow (sin ky) 2))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* 1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))))))))))
(+ (sin th) (* (pow kx 2) (+ (* -1/2 (/ (sin th) (pow (sin ky) 2))) (* (pow kx 2) (+ (* -1/2 (* (pow kx 2) (* (pow (sin ky) 2) (* (sin th) (+ (* -1/2 (/ (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6)))) (pow (sin ky) 2))) (+ (* 2/45 (/ 1 (pow (sin ky) 4))) (+ (* 2/3 (/ 1 (pow (sin ky) 6))) (/ 1 (pow (sin ky) 8))))))))) (* 1/2 (* (pow (sin ky) 2) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin ky) 4))) (* 3/4 (/ 1 (pow (sin ky) 6))))))))))))
(+ 1 (* -1/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 ky)
(* kx (+ (* -1/6 (/ (pow kx 2) ky)) (/ 1 ky)))
(* kx (+ (* (pow kx 2) (- (* 1/120 (/ (pow kx 2) ky)) (* 1/6 (/ 1 ky)))) (/ 1 ky)))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/5040 (/ (pow kx 2) ky)) (* 1/120 (/ 1 ky)))) (* 1/6 (/ 1 ky)))) (/ 1 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))))))
(/ 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)))
(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))
(* (/ 1 (sin ky)) (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)))))
(/ (sin kx) ky)
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(+ (pow (sin kx) 2) (pow (sin ky) 2))
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) 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))))
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))))))
(/ 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)))
(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 kx) 2)
(+ (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))
(* (* 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/6 (pow th 2))
(pow th 2)
(* -1/6 (pow th 3))
(* (pow th 3) (- (/ 1 (pow th 2)) 1/6))
(* -1 (* (pow th 3) (- 1/6 (/ 1 (pow th 2)))))
Outputs
1
#s(literal 1 binary64)
(+ 1 (* 1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.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) (+ (* -1/2 (/ (* (pow kx 2) (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2))))) (pow (sin ky) 2))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (fma.f64 (*.f64 (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) 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 (* (pow kx 2) (+ (* (pow kx 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))) (* 1/2 (/ (* (pow kx 2) (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin ky) 2)))) (pow (sin ky) 2))))) (pow (sin ky) 2))))) (* 1/2 (/ 1 (pow (sin ky) 2))))))
(fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64)))
(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 (fma.f64 (*.f64 (*.f64 kx kx) #s(literal 1/2 binary64)) (*.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 (*.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) (* (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 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #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 th)) (*.f64 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (*.f64 (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 th))))) (*.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 (* -1/2 (/ (pow kx 2) (pow (sin ky) 2))))
(fma.f64 (/.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) (- (* 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 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 (fma.f64 (*.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (fma.f64 #s(literal 1/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 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 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 ky)
(/.f64 kx ky)
(* kx (+ (* -1/6 (/ (pow kx 2) ky)) (/ 1 ky)))
(fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky))
(* kx (+ (* (pow kx 2) (- (* 1/120 (/ (pow kx 2) ky)) (* 1/6 (/ 1 ky)))) (/ 1 ky)))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (*.f64 (/.f64 #s(literal 1 binary64) ky) (fma.f64 (*.f64 #s(literal 1/120 binary64) kx) kx #s(literal -1/6 binary64))) (/.f64 kx ky))
(* kx (+ (* (pow kx 2) (- (* (pow kx 2) (+ (* -1/5040 (/ (pow kx 2) ky)) (* 1/120 (/ 1 ky)))) (* 1/6 (/ 1 ky)))) (/ 1 ky)))
(fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky))
(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 (fma.f64 (*.f64 (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 ky)) kx) kx (/.f64 #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)) (fma.f64 (*.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (*.f64 kx (/.f64 kx (sin.f64 ky)))) #s(literal 1/2 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 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)))
(/ 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 kx (/.f64 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 (fma.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 (fma.f64 (*.f64 (sin.f64 ky) (fma.f64 #s(literal 1/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 (*.f64 #s(literal -1/2 binary64) (*.f64 kx kx)) (+.f64 (+.f64 (+.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 8 binary64))) (/.f64 #s(literal 2/3 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64)))) (/.f64 #s(literal 2/45 binary64) (pow.f64 (sin.f64 ky) #s(literal 4 binary64)))) (/.f64 (+.f64 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 ky) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 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 3 binary64)))) (*.f64 kx kx) (/.f64 #s(literal 1 binary64) (sin.f64 ky)))
(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 kx kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) #s(literal -1/3 binary64) (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 kx kx (fma.f64 (pow.f64 kx #s(literal 4 binary64)) (fma.f64 #s(literal 2/45 binary64) (*.f64 kx kx) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))
(* (/ 1 (sin ky)) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (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))
(/ (sin kx) ky)
(/.f64 (sin.f64 kx) ky)
(sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))
(hypot.f64 (sin.f64 kx) (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)))))
(+ (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)))
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (* 1/2 (/ 1 (sin kx)))))) ky)
(/.f64 (fma.f64 (*.f64 (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) ky) ky (sin.f64 kx)) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (* 1/12 (/ 1 (sin kx)))))))))) ky)
(/.f64 (fma.f64 (fma.f64 (+.f64 (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.f64 #s(literal 1/12 binary64) (sin.f64 kx))) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 kx))) (*.f64 ky ky) (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)))) (*.f64 ky ky) (sin.f64 kx)) ky)
(/ (+ (sin kx) (* (pow ky 2) (+ (* 1/6 (sin kx)) (+ (* 1/2 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 7/360 (sin kx)) (+ (* 1/12 (/ 1 (sin kx))) (* (pow ky 2) (+ (* -1/12 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (sin kx))) (+ (* 31/15120 (sin kx)) (+ (* 7/720 (/ 1 (sin kx))) (* 1/2 (/ (- 2/45 (* -1/2 (/ (+ 1/3 (* 1/4 (/ 1 (pow (sin kx) 2)))) (pow (sin kx) 2)))) (sin kx))))))))))))))) ky)
(/.f64 (fma.f64 (fma.f64 (+.f64 (fma.f64 #s(literal 7/360 binary64) (sin.f64 kx) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 kx))) (fma.f64 (+.f64 (fma.f64 (/.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)) #s(literal 1/2 binary64) (fma.f64 #s(literal 31/15120 binary64) (sin.f64 kx) (/.f64 #s(literal 7/720 binary64) (sin.f64 kx)))) (/.f64 (+.f64 (/.f64 #s(literal -1/48 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/36 binary64)) (sin.f64 kx))) (*.f64 ky ky) (/.f64 #s(literal 1/12 binary64) (sin.f64 kx)))) (*.f64 ky ky) (fma.f64 #s(literal 1/6 binary64) (sin.f64 kx) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx)))) (*.f64 ky ky) (sin.f64 kx)) ky)
(/ (* ky (sin th)) (sin kx))
(*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx)))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (* -1/6 (/ (sin th) (sin kx))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))))))))) (/ (sin th) (sin kx))))
(fma.f64 (pow.f64 ky #s(literal 3 binary64)) (fma.f64 (fma.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (*.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 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 (sin.f64 th) (/.f64 ky (sin.f64 kx))))
(* ky (+ (* (pow ky 2) (+ (* -1/2 (/ (sin th) (pow (sin kx) 3))) (+ (* -1/6 (/ (sin th) (sin kx))) (* (pow ky 2) (+ (* 1/120 (/ (sin th) (sin kx))) (+ (* 1/12 (/ (sin th) (pow (sin kx) 3))) (+ (* 1/2 (* (sin kx) (* (sin th) (+ (* 1/3 (/ 1 (pow (sin kx) 4))) (* 3/4 (/ 1 (pow (sin kx) 6))))))) (* (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)) (+.f64 (/.f64 #s(literal 1/12 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/120 binary64)) (fma.f64 (*.f64 (*.f64 #s(literal 1/2 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)))) (*.f64 (fma.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (fma.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)))) #s(literal -1/12 binary64) (*.f64 (+.f64 (+.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 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 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 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/5040 binary64) (/.f64 #s(literal -1/240 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))) (*.f64 ky ky)))) (*.f64 ky ky) (*.f64 (/.f64 (sin.f64 th) (sin.f64 kx)) (+.f64 #s(literal -1/6 binary64) (/.f64 #s(literal -1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 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))))
(fma.f64 (neg.f64 (pow.f64 ky #s(literal 3 binary64))) (+.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 (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)) (fma.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/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.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)) (fma.f64 (+.f64 (fma.f64 (fma.f64 (sin.f64 kx) (fma.f64 #s(literal -1/12 binary64) (+.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/2 binary64) (+.f64 (+.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 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 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/6 binary64) (sin.f64 kx)) (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))))) (/.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)) (fma.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)) (fma.f64 (fma.f64 (*.f64 ky ky) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 ky ky) #s(literal -1/6 binary64)) ky)
(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 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (sin.f64 kx)) (*.f64 ky ky) (/.f64 #s(literal 1/2 binary64) (sin.f64 kx))) 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)) (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (/.f64 (-.f64 #s(literal 2/45 binary64) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1/6 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 kx)) (/.f64 (+.f64 (/.f64 #s(literal -1/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 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)))
(/ 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 ky (/.f64 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 (fma.f64 (*.f64 (*.f64 ky ky) #s(literal 1/2 binary64)) (*.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 (fma.f64 (*.f64 (sin.f64 kx) (fma.f64 (*.f64 (*.f64 ky ky) #s(literal -1/2 binary64)) (+.f64 (+.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 (/.f64 #s(literal -3/8 binary64) (pow.f64 (sin.f64 kx) #s(literal 6 binary64))) (/.f64 #s(literal -1/6 binary64) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (*.f64 #s(literal 1/2 binary64) (+.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 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)))
(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)) (fma.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)) (fma.f64 (fma.f64 #s(literal -1/315 binary64) (*.f64 ky ky) #s(literal 2/45 binary64)) (*.f64 ky ky) #s(literal -1/3 binary64)) (*.f64 ky ky))
(pow (sin kx) 2)
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
(+ (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 ky ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) #s(literal -1/3 binary64) (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 ky ky (fma.f64 (pow.f64 ky #s(literal 4 binary64)) (fma.f64 (*.f64 ky ky) #s(literal 2/45 binary64) #s(literal -1/3 binary64)) (pow.f64 (sin.f64 kx) #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))))) th) (*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) (sin.f64 ky)))
(* th (+ (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))) (* (pow th 2) (+ (* -1/6 (* (sin ky) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2)))))) (* 1/120 (* (* (pow th 2) (sin ky)) (sqrt (/ 1 (+ (pow (sin kx) 2) (pow (sin ky) 2))))))))))
(*.f64 (fma.f64 (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 th th)) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 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))))) (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 th th) #s(literal -1/6 binary64) #s(literal 1 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))))) (sin.f64 ky)) (*.f64 (pow.f64 th #s(literal 4 binary64)) (*.f64 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (*.f64 (sin.f64 ky) (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)))))) th)
th
(* 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)) (fma.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)) (fma.f64 (fma.f64 (*.f64 th th) #s(literal -1/5040 binary64) #s(literal 1/120 binary64)) (*.f64 th th) #s(literal -1/6 binary64)) th)
(* -1/6 (pow th 2))
(*.f64 (*.f64 th th) #s(literal -1/6 binary64))
(pow th 2)
(*.f64 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 (* (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)))

rewrite147.0ms (1.5%)

Memory
-8.9MiB live, 150.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
049301
080254
1279247
21522247
09330244
Stop Event
iter limit
node limit
iter limit
Counts
23 → 524
Calls
Call 1
Inputs
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
(sin.f64 th)
(/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th))
(*.f64 #s(literal -1/6 binary64) (*.f64 th th))
(*.f64 th th)
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(/.f64 (sin.f64 kx) ky)
(/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(sin.f64 ky)
(/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(hypot.f64 (sin.f64 kx) (sin.f64 ky))
(fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (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)))
Outputs
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 kx))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 kx))) (/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (sin.f64 kx)) (/.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1/2 binary64)) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1/2 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (pow.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(*.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(*.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(pow.f64 (exp.f64 (log.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) #s(literal -1 binary64))
(pow.f64 (*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64))
(pow.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(neg.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(exp.f64 (-.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64)) (log.f64 (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1/2 binary64))) (/.f64 (sin.f64 th) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1/2 binary64))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1/2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1/2 binary64))))
(*.f64 (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sin.f64 th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 kx))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 (neg.f64 (sin.f64 th)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(*.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal 1 binary64))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sin.f64 th))
(*.f64 (sin.f64 kx) (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (sin.f64 kx) (*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th)))
(*.f64 #s(literal 1 binary64) (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(pow.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))) #s(literal -1 binary64))
(/.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th))))
(/.f64 (*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal 1 binary64))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(/.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th)))
(neg.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx)))) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 th)) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))))
(exp.f64 (*.f64 (log.f64 (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 th)))
(*.f64 (sin.f64 th) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (sin.f64 th))
(pow.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal -1 binary64))
(/.f64 (neg.f64 (sin.f64 th)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(/.f64 (sin.f64 th) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 th) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(neg.f64 (neg.f64 (sin.f64 th)))
(sin.f64 th)
(-.f64 #s(literal 0 binary64) (*.f64 (sin.f64 th) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 th)))
(*.f64 (/.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (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 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64))))
(*.f64 (pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64)) (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (pow.f64 (neg.f64 (sin.f64 kx)) #s(literal 1 binary64)) (pow.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64)))
(*.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)) (sin.f64 kx))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (pow.f64 (/.f64 #s(literal -1 binary64) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (neg.f64 (sin.f64 kx)))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (pow.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(*.f64 (sin.f64 kx) (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal 1 binary64)))
(*.f64 (sin.f64 kx) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(pow.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)) #s(literal -1 binary64))
(pow.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(/.f64 (neg.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(/.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (neg.f64 (sin.f64 kx))))
(/.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal 1 binary64))
(/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64))))
(exp.f64 (neg.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal -1 binary64))))
(exp.f64 (fma.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64) (log.f64 (sin.f64 kx))))
(exp.f64 (+.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) (sin.f64 kx))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))) #s(literal 1 binary64)))
#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) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(*.f64 (*.f64 #s(literal -1/6 binary64) th) th)
(*.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 th th))
(*.f64 th (*.f64 #s(literal -1/6 binary64) th))
(*.f64 (exp.f64 (log.f64 th)) (exp.f64 (log.f64 th)))
(*.f64 th th)
(pow.f64 (exp.f64 (log.f64 th)) #s(literal 2 binary64))
(pow.f64 (*.f64 th th) #s(literal 1 binary64))
(pow.f64 th #s(literal 2 binary64))
(exp.f64 (*.f64 (log.f64 th) #s(literal 2 binary64)))
(*.f64 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(*.f64 (sin.f64 th) (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(pow.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)) #s(literal -1 binary64))
(/.f64 (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(exp.f64 (*.f64 (log.f64 (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th))) #s(literal -1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(*.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal 1 binary64))
#s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))
(/.f64 (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))) #s(literal -1 binary64))
(/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) #s(literal -1 binary64)))
(neg.f64 (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(-.f64 #s(literal 0 binary64) (neg.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(*.f64 (pow.f64 ky #s(literal -1 binary64)) (sin.f64 kx))
(*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 ky (sin.f64 kx)))))
(*.f64 #s(literal -1 binary64) (/.f64 (neg.f64 (sin.f64 kx)) ky))
(*.f64 (sin.f64 kx) (pow.f64 ky #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) ky))
(pow.f64 (/.f64 ky (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 (pow.f64 ky #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 kx)) (neg.f64 ky))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 ky (sin.f64 kx))))
(/.f64 (sin.f64 kx) ky)
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 ky (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 ky (sin.f64 kx)))
(neg.f64 (/.f64 (neg.f64 (sin.f64 kx)) ky))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 ky)) (/.f64 (neg.f64 (sin.f64 kx)) ky))
(-.f64 #s(literal 0 binary64) (/.f64 (neg.f64 (sin.f64 kx)) ky))
(exp.f64 (*.f64 (log.f64 (/.f64 ky (sin.f64 kx))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64))) (/.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 1 binary64)) (/.f64 (sqrt.f64 (sin.f64 kx)) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64))))
(*.f64 (/.f64 (sqrt.f64 (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sqrt.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64))) (/.f64 #s(literal 1 binary64) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64))))
(*.f64 (*.f64 (sin.f64 kx) #s(literal -1 binary64)) (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (neg.f64 (sin.f64 kx)) (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal -1 binary64)))))
(*.f64 #s(literal -1 binary64) (*.f64 (neg.f64 (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx))
(*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 #s(literal 1 binary64) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)))
(pow.f64 (pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 (neg.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(/.f64 #s(literal -1 binary64) (neg.f64 (pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (sin.f64 kx) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal -1 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal -1 binary64)))
(neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))) (*.f64 (neg.f64 (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(-.f64 #s(literal 0 binary64) (*.f64 (neg.f64 (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(exp.f64 (-.f64 (log.f64 (sin.f64 kx)) (*.f64 (log.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal -1 binary64))))
(exp.f64 (*.f64 (log.f64 (pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal -1 binary64))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 th) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64))) (/.f64 (sin.f64 kx) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64))))
(*.f64 (/.f64 (sin.f64 kx) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64))) (/.f64 (sin.f64 th) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64))))
(*.f64 (*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(literal -1 binary64)) (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (*.f64 (sin.f64 th) #s(literal -1 binary64)) (*.f64 (neg.f64 (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (*.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))))
(*.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (*.f64 (sin.f64 th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (sin.f64 kx))
(*.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) (sin.f64 th))
(*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (*.f64 (sin.f64 th) (sin.f64 kx)))
(*.f64 (sin.f64 th) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)))
(*.f64 (sin.f64 kx) (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 th)))
(*.f64 (sin.f64 kx) (*.f64 (sin.f64 th) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 #s(literal 1 binary64) (*.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) (sin.f64 th)))
(pow.f64 (/.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(/.f64 (neg.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx)))) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(/.f64 (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(/.f64 (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 th)) (neg.f64 (pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal -1 binary64))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 (sin.f64 th) (pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal -1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (*.f64 (neg.f64 (sin.f64 kx)) (sin.f64 th))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (*.f64 (sin.f64 th) (neg.f64 (sin.f64 kx)))))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)) (*.f64 (sin.f64 th) (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)))
(*.f64 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (neg.f64 (sin.f64 kx)))
(*.f64 (sin.f64 kx) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (sin.f64 kx))
(pow.f64 (sqrt.f64 (sin.f64 kx)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #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 (neg.f64 (sin.f64 kx)) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (sin.f64 kx) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(neg.f64 (neg.f64 (sin.f64 kx)))
(sin.f64 kx)
(sin.f64 ky)
(-.f64 #s(literal 0 binary64) (*.f64 (sin.f64 kx) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx)))
(exp.f64 (neg.f64 (*.f64 (log.f64 (sin.f64 kx)) #s(literal -1 binary64))))
(exp.f64 (log.f64 (sin.f64 kx)))
(*.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64)) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64)))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(pow.f64 (exp.f64 (log.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))) #s(literal -1 binary64))
(pow.f64 (*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal -1/2 binary64))
(pow.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64))
(pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64))
(/.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(/.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(neg.f64 (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(-.f64 #s(literal 0 binary64) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(exp.f64 (*.f64 (log.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sin.f64 kx) (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 (sin.f64 th) (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 (/.f64 (sin.f64 th) (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 (sin.f64 kx) (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 (/.f64 (neg.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 kx) #s(literal -1 binary64)))
(*.f64 (/.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (neg.f64 (sin.f64 kx)))
(*.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (/.f64 (sin.f64 th) (/.f64 #s(literal -1 binary64) (sin.f64 kx))))
(*.f64 (pow.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 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sin.f64 th)) #s(literal -1 binary64)))
(*.f64 (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 (sin.f64 th) (sin.f64 kx)))
(*.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 kx))
(*.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (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 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (neg.f64 (sin.f64 th)) (neg.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(*.f64 #s(literal -1 binary64) (/.f64 #s(literal 1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))))
(*.f64 #s(literal -1 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 kx)))
(*.f64 (sin.f64 th) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sin.f64 kx) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 #s(literal 1 binary64) (/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (neg.f64 (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(/.f64 (neg.f64 (*.f64 (sin.f64 th) (sin.f64 kx))) (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) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (*.f64 (sin.f64 th) (sin.f64 kx)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (pow.f64 (sin.f64 th) #s(literal -1 binary64)))
(/.f64 (neg.f64 (sin.f64 th)) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (neg.f64 (sin.f64 kx))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx)))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(/.f64 (sin.f64 kx) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 th)))
(/.f64 #s(literal 1 binary64) (/.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx))))
(neg.f64 (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 kx)))
(-.f64 (/.f64 #s(literal 0 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (neg.f64 (sin.f64 kx)))) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 kx)))
(-.f64 #s(literal 0 binary64) (*.f64 (/.f64 (neg.f64 (sin.f64 th)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 kx)))
(exp.f64 (*.f64 (log.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 th) (sin.f64 kx)))) #s(literal -1 binary64)))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sqrt.f64 (sin.f64 kx))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.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)) (sqrt.f64 (sin.f64 kx))) (/.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)) (sqrt.f64 (sin.f64 kx))))
(*.f64 (/.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)) (sin.f64 kx)) (/.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 1 binary64)))
(*.f64 (pow.f64 (/.f64 #s(literal -1 binary64) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64)) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 (pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 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/2 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (sin.f64 kx) #s(literal -1 binary64)) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(*.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (/.f64 #s(literal -1 binary64) (sin.f64 kx)))
(*.f64 #s(literal -1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (neg.f64 (sin.f64 kx))))
(*.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)))
(pow.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(literal -1 binary64))
(pow.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (neg.f64 (sin.f64 kx)))
(/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (neg.f64 (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))))
(/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 kx))
(/.f64 #s(literal 1 binary64) (neg.f64 (neg.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(neg.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (neg.f64 (sin.f64 kx))))
(-.f64 (/.f64 #s(literal 0 binary64) (neg.f64 (sin.f64 kx))) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (neg.f64 (sin.f64 kx))))
(-.f64 #s(literal 0 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (neg.f64 (sin.f64 kx))))
(exp.f64 (-.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)) (log.f64 (sin.f64 kx))))
(exp.f64 (*.f64 (log.f64 (/.f64 (sin.f64 kx) (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))) #s(literal -1 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)))
(*.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)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.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 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 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)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) #s(literal 1/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))) (/.f64 #s(literal 1 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))))))
(*.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 (pow.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))) #s(literal -1 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))) (pow.f64 (pow.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))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 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 (neg.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))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.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)))) (neg.f64 (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))))))
(/.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 (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)))))
(/.f64 #s(literal 1 binary64) (/.f64 (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 4 binary64)) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (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)))) (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)))))
(/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(neg.f64 (neg.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #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 #s(literal 0 binary64) (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 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1/2 binary64)))
(*.f64 (pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal 1/4 binary64)) #s(literal -1 binary64)))
(*.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (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 kx) #s(literal 4 binary64)))) (sqrt.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64))))
(*.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (pow.f64 (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64))))
(*.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (pow.f64 (pow.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) #s(literal -1 binary64)) #s(literal 1/2 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(*.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) (hypot.f64 (sin.f64 kx) (sin.f64 kx)))
(pow.f64 (*.f64 (fma.f64 (sin.f64 kx) (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)))) #s(literal 1/4 binary64))
(pow.f64 (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/4 binary64)) #s(literal 2 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)) #s(literal -1/2 binary64))
(pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) #s(literal 1/2 binary64))
(pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (neg.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))
(/.f64 (neg.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))) (neg.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #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 kx) #s(literal 6 binary64))))) (sqrt.f64 (neg.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 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) kx)))))) #s(literal 2 binary64))
(/.f64 (*.f64 (sqrt.f64 #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 kx))) (sqrt.f64 #s(literal -1 binary64)))
(/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64))) (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))))
(/.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))) #s(literal -1 binary64))
(/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sqrt.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (-.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (sin.f64 kx) #s(literal 4 binary64))) (pow.f64 (sin.f64 kx) #s(literal 4 binary64)))) (hypot.f64 (pow.f64 (sin.f64 kx) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64)))
(neg.f64 (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(-.f64 #s(literal 0 binary64) (neg.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx))))
(hypot.f64 (sin.f64 kx) (sin.f64 kx))
(exp.f64 (*.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64))) #s(literal 1/2 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (neg.f64 (log.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 kx)) #s(literal -2 binary64)))) #s(literal 1/2 binary64)))
(*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(*.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(*.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) (/.f64 #s(literal 1 binary64) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))))
(*.f64 (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)) th)
(*.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (pow.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) #s(literal -1 binary64)))
(*.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (/.f64 #s(literal 1 binary64) (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(*.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (pow.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) #s(literal -1 binary64)))
(*.f64 th (fma.f64 (*.f64 th th) #s(literal -1/6 binary64) #s(literal 1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) #s(literal 3 binary64)) (pow.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) #s(literal 3 binary64))) (fma.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (fma.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (*.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))))
(/.f64 (neg.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))))) (neg.f64 (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)))) (neg.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(/.f64 (neg.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))))) (neg.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))))
(/.f64 (-.f64 (*.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (*.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (*.f64 th th))) (*.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))
(/.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))))
(/.f64 (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th))) (neg.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(/.f64 (neg.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))) (neg.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64)))))))
(/.f64 (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (*.f64 (neg.f64 th) th)) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))
(/.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.f64 (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64))) (fma.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)) (-.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))))
(/.f64 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64))) (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))))))
(/.f64 #s(literal 1 binary64) (/.f64 (fma.f64 th th (-.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 4 binary64))))) (fma.f64 (pow.f64 th #s(literal 9 binary64)) #s(literal -1/216 binary64) (pow.f64 th #s(literal 3 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(fma.f64 (*.f64 #s(literal -1/6 binary64) th) (*.f64 th th) th)
(fma.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (pow.f64 (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)) #s(literal -1 binary64)) (neg.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)
(fma.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th th)
(fma.f64 (*.f64 th th) (*.f64 #s(literal -1/6 binary64) th) th)
(fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)
(fma.f64 th (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th)
(-.f64 (/.f64 (*.f64 th th) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))) (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
(-.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))))
(+.f64 (/.f64 (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64))) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th))) (neg.f64 (/.f64 (*.f64 th th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) (neg.f64 th)))))
(+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)) th)
(+.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))
(*.f64 (pow.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64)) #s(literal -1 binary64)) (pow.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1/2 binary64)) #s(literal -1 binary64)))
(*.f64 (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal -1 binary64))
(*.f64 #s(literal -1 binary64) (pow.f64 (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal 1 binary64)))
(*.f64 #s(literal -1 binary64) (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(*.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal 1 binary64))
(*.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))))
(pow.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)) #s(literal -1 binary64))
(pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal 1 binary64))
#s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))
(/.f64 (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal -1 binary64))
(/.f64 #s(literal -1 binary64) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(/.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal 1 binary64))
(/.f64 #s(literal 1 binary64) (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(neg.f64 (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(-.f64 #s(literal 0 binary64) (/.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64)))
(-.f64 #s(literal 0 binary64) (neg.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))))
(exp.f64 (neg.f64 (*.f64 (log.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal -1 binary64))))
(exp.f64 (*.f64 (*.f64 (log.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal -1 binary64)) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 (pow.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64))) #s(literal -1 binary64))) #s(literal -1 binary64)))
(exp.f64 (*.f64 (log.f64 #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) #s(literal 1 binary64)))
#s(approx (pow (sin ky) 2) (*.f64 ky ky))
(*.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))) (/.f64 #s(literal 1 binary64) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(*.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)))) (/.f64 #s(literal 1 binary64) (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(*.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)))) (/.f64 #s(literal 1 binary64) (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 (-.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))) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)))
(*.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))) (/.f64 #s(literal 1 binary64) (+.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 (+.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))) (pow.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))) #s(literal -1 binary64)))
(*.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(pow.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal -1 binary64))
(/.f64 (-.f64 (pow.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 1/2 binary64)) #s(literal 3 binary64)) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (fma.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 1/2 binary64)) (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 1/2 binary64)) (+.f64 (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 2 binary64)) (*.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))))
(/.f64 (-.f64 (pow.f64 (/.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)))) #s(literal 3 binary64)) (pow.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 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 3 binary64))) (fma.f64 (/.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 (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)))) (fma.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 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (/.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (/.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 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))))
(/.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64) (neg.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 3 binary64))) (+.f64 #s(literal 1/4 binary64) (fma.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64) (neg.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64) (neg.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64) (neg.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))))
(/.f64 (neg.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)))) (neg.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))))
(/.f64 (neg.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))))) (neg.f64 (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 (neg.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))))) (neg.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 (-.f64 (*.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 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)))) (*.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)))))
(/.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))) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))
(/.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)))) (neg.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(/.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)))) (neg.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 (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)))) (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 (-.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))) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))
(/.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))) (+.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 (+.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))) (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 #s(literal -1 binary64) (neg.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(/.f64 #s(literal 1 binary64) (/.f64 (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))) (-.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)))))
(/.f64 #s(literal 1 binary64) (/.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 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 3 binary64)) (pow.f64 (sin.f64 kx) #s(literal 6 binary64)))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) #s(literal 1 binary64)))
(/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(fma.f64 (pow.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 1 binary64)) #s(literal 1/2 binary64) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(fma.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))) (/.f64 #s(literal 1 binary64) (pow.f64 (cos.f64 kx) #s(literal 2 binary64))) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(fma.f64 (-.f64 #s(literal 1/8 binary64) (pow.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)) #s(literal 3 binary64))) (/.f64 #s(literal 1 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)))))) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(fma.f64 (neg.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) (*.f64 ky ky)))
(fma.f64 (pow.f64 (sin.f64 kx) #s(literal 4 binary64)) (pow.f64 (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))) #s(literal -1 binary64)) (neg.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 2 binary64)) #s(approx (pow (sin ky) 2) (*.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) (*.f64 ky ky)))
(fma.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(literal 1 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)))
(fma.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))
(-.f64 (/.f64 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #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 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 1/2 binary64)) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))
(-.f64 (/.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 (pow.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 2 binary64)) (-.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(-.f64 #s(literal 1/2 binary64) (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64) (neg.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)))))
(+.f64 (+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) #s(literal 1/2 binary64)) (neg.f64 (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64))))
(+.f64 (/.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)))) (neg.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 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))
(+.f64 #s(literal 1/2 binary64) (neg.f64 (fma.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64) (neg.f64 #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)))
(+.f64 #s(approx (pow (sin ky) 2) (*.f64 ky ky)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))

eval189.0ms (1.9%)

Memory
10.5MiB live, 127.9MiB allocated
Compiler

Compiled 20 427 to 2 505 computations (87.7% saved)

prune176.0ms (1.8%)

Memory
-16.5MiB live, 182.8MiB allocated
Pruning

73 alts after pruning (64 fresh and 9 done)

PrunedKeptTotal
New70321724
Fresh114354
Picked145
Done156
Total71673789
Accuracy
100.0%
Counts
789 → 73
Alt Table
Click to see full alt table
StatusAccuracyProgram
32.7%
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
95.6%
(/.f64 (*.f64 (sin.f64 th) (sin.f64 ky)) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))
46.7%
(/.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)))))
99.7%
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
37.4%
(/.f64 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky)))
39.6%
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky)))
42.5%
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky)))
40.6%
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky)))
35.5%
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
99.6%
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky)))))
32.7%
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
99.5%
(/.f64 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
35.9%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
32.7%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
32.7%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
19.6%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
19.6%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
24.8%
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
32.0%
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
19.5%
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
99.4%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
47.8%
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)) (sin.f64 th)))
32.6%
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
23.8%
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
72.6%
(*.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))
40.5%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
32.0%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
35.5%
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
99.7%
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (sin.f64 th))
72.6%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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))
31.9%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
35.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
35.5%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
21.0%
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
37.4%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
37.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 ky ky))))) (sin.f64 th))
54.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))
22.3%
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
31.4%
(*.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))
35.6%
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
31.9%
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
35.5%
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
23.8%
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
32.0%
(*.f64 (*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (sin.f64 th))
35.5%
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
47.9%
(*.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))))))
32.7%
(*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
25.2%
(*.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))
32.7%
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
54.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
58.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
58.8%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
58.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
53.3%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (pow.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) #s(literal -1/2 binary64))))
53.2%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (sqrt.f64 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))))
49.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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
26.9%
#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)))))
20.1%
#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)))))
32.0%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
15.6%
#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)))
19.6%
#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 (/.f64 th (sin.f64 kx)) ky)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
19.3%
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 th #s(literal -1/6 binary64)) th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))))
19.4%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)) th)))
18.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))))
12.7%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64)))))
7.9%
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
Compiler

Compiled 4 540 to 1 845 computations (59.4% saved)

regimes421.0ms (4.2%)

Memory
29.4MiB live, 431.6MiB allocated
Counts
103 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.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 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (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 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 kx) (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 #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 ky) (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 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 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 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 (sin.f64 kx) (sin.f64 kx) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64))))))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)) (sin.f64 th)))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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) (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 (pow.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) #s(literal -2 binary64)))))
(/.f64 (sin.f64 ky) (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (/.f64 #s(literal -1 binary64) (hypot.f64 (sin.f64 ky) (sin.f64 kx))) (neg.f64 (sin.f64 ky))) (sin.f64 th))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky))) (sin.f64 th))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 th)) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) (/.f64 (sin.f64 ky) (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 (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) (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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (*.f64 (sin.f64 ky) th) (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 (sin.f64 th) (*.f64 (pow.f64 (sin.f64 ky) #s(literal -1 binary64)) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)))) (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 (sqrt.f64 (sin.f64 ky)) (*.f64 (sqrt.f64 (sin.f64 ky)) (/.f64 (sin.f64 th) (hypot.f64 (sin.f64 ky) (sin.f64 kx)))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.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))) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) (sin.f64 th))
(*.f64 (pow.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (pow.f64 (sin.f64 ky) #s(literal -1 binary64))))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (/.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))) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
(*.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 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
Calls

9 calls:

150.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
52.0ms
(sin.f64 th)
35.0ms
ky
32.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)))))
30.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
99.7%1kx
99.7%1ky
99.7%1th
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%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(sin.f64 ky)
99.7%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.7%1(sin.f64 kx)
99.7%1(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes299.0ms (3%)

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

9 calls:

57.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
39.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)))))
28.0ms
(sin.f64 kx)
26.0ms
(sin.f64 th)
26.0ms
ky
Results
AccuracySegmentsBranch
99.7%1ky
99.7%1th
99.7%1kx
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%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(sin.f64 ky)
99.7%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
99.7%1(sin.f64 kx)
99.7%1(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes222.0ms (2.2%)

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

9 calls:

27.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))
27.0ms
ky
26.0ms
th
24.0ms
(sin.f64 ky)
23.0ms
kx
Results
AccuracySegmentsBranch
92.2%2kx
93.4%3ky
86.8%2th
85.5%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))
96.5%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
93.4%4(sin.f64 ky)
92.2%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
92.2%3(sin.f64 kx)
86.8%3(sin.f64 th)
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes26.0ms (0.3%)

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

1 calls:

22.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
96.5%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes233.0ms (2.3%)

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

8 calls:

36.0ms
kx
33.0ms
(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
24.0ms
(sin.f64 ky)
24.0ms
ky
24.0ms
th
Results
AccuracySegmentsBranch
79.2%3(sin.f64 th)
80.6%3th
78.0%4(sin.f64 ky)
74.3%3(sin.f64 kx)
77.6%4ky
74.1%2kx
76.2%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
87.5%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 26 to 38 computations (-46.2% saved)

regimes24.0ms (0.2%)

Memory
27.2MiB live, 27.2MiB allocated
Counts
75 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.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 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (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 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 kx) (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 #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 ky) (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 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 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky)))
(/.f64 #s(literal 1 binary64) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (*.f64 (sin.f64 ky) (sin.f64 th))))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) (sqrt.f64 #s(approx (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))) (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))))) (sin.f64 th))
Outputs
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky)))
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
87.5%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes24.0ms (0.2%)

Memory
-2.3MiB live, 36.1MiB allocated
Counts
71 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.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 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (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 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 kx) (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 #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 ky) (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 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 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky)))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) #s(approx (pow (sin ky) 2) (*.f64 ky ky))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky)))
Outputs
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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))
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
87.5%5(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes25.0ms (0.2%)

Memory
0.1MiB live, 36.3MiB allocated
Counts
67 → 5
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.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 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (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 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 kx) (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 #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 ky) (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 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))
Outputs
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (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
87.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)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes23.0ms (0.2%)

Memory
-12.0MiB live, 29.6MiB allocated
Counts
60 → 4
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.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 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (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 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 (*.f64 (sin.f64 ky) th) (hypot.f64 (sin.f64 kx) (sin.f64 ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (/.f64 th (/.f64 (hypot.f64 (sin.f64 kx) (sin.f64 ky)) (sin.f64 ky))))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (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)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (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
84.2%4(/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))))
Compiler

Compiled 13 to 11 computations (15.4% saved)

regimes129.0ms (1.3%)

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

7 calls:

21.0ms
(sin.f64 ky)
19.0ms
th
18.0ms
(sin.f64 th)
17.0ms
(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
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
74.1%4ky
64.3%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
76.2%5(sin.f64 ky)
74.8%3(sin.f64 th)
76.0%3th
68.6%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))
76.8%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 39 to 44 computations (-12.8% saved)

regimes21.0ms (0.2%)

Memory
5.4MiB live, 42.9MiB allocated
Counts
56 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.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 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
Outputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky)))
(/.f64 (sin.f64 th) (/.f64 (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) (*.f64 ky 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:

18.0ms
th
Results
AccuracySegmentsBranch
76.0%3th
Compiler

Compiled 1 to 3 computations (-200% saved)

regimes156.0ms (1.6%)

Memory
-37.1MiB live, 243.3MiB allocated
Counts
55 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.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 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky)))
(*.f64 (sin.f64 th) (*.f64 (pow.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) #s(literal -1 binary64)) (sin.f64 kx)))
(*.f64 (*.f64 (sin.f64 kx) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (pow.f64 (sin.f64 kx) #s(literal -1 binary64)))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(/.f64 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

9 calls:

21.0ms
th
18.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))
16.0ms
(sin.f64 ky)
16.0ms
(sin.f64 th)
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
60.1%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
51.4%4(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
59.9%3ky
61.3%3(sin.f64 ky)
61.2%3(sin.f64 kx)
45.5%3(sin.f64 th)
60.9%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)))))
60.1%3kx
45.1%3th
Compiler

Compiled 42 to 51 computations (-21.4% saved)

regimes17.0ms (0.2%)

Memory
25.9MiB live, 25.9MiB allocated
Counts
52 → 3
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.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
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (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))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

1 calls:

15.0ms
(sin.f64 ky)
Results
AccuracySegmentsBranch
61.3%3(sin.f64 ky)
Compiler

Compiled 2 to 4 computations (-100% saved)

regimes47.0ms (0.5%)

Memory
-1.2MiB live, 75.0MiB allocated
Counts
51 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) #s(approx (/ 1 (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2))))) (sin.f64 kx))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))) (sin.f64 ky))
(*.f64 (/.f64 (sin.f64 th) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 ky))) (sin.f64 ky))
(/.f64 (sin.f64 kx) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (*.f64 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)))) (sin.f64 ky))
(*.f64 (*.f64 (sin.f64 kx) (neg.f64 (sin.f64 th))) (/.f64 #s(literal -1 binary64) #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx))))
(*.f64 (/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (sin.f64 th))) (sin.f64 ky))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin.f64 kx)) (*.f64 (sin.f64 th) (sin.f64 kx))))
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (fma.f64 (*.f64 #s(literal -1/2 binary64) kx) (/.f64 kx (pow.f64 (sin.f64 ky) #s(literal 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 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 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (fma.f64 (/.f64 #s(literal 1/2 binary64) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))) (*.f64 kx kx) #s(literal 1 binary64))))
(/.f64 (/.f64 #s(literal 1 binary64) (pow.f64 (sin.f64 th) #s(literal -1 binary64))) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(*.f64 (/.f64 (sin.f64 kx) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 ky))))) (sin.f64 th))
(*.f64 (/.f64 (sin.f64 ky) (/.f64 #s(literal 1 binary64) #s(approx (sqrt (/ 1 (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)))) (/.f64 #s(literal 1 binary64) (sin.f64 kx))))) #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)))
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 #s(approx (pow (sin kx) 2) (*.f64 kx kx)) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) kx)) #s(literal 1/2 binary64)))))) (sin.f64 th))
Outputs
(*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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:

15.0ms
(sin.f64 ky)
15.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)))))
14.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
59.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)))))
53.3%3(sin.f64 kx)
54.3%3(sin.f64 ky)
Compiler

Compiled 17 to 19 computations (-11.8% saved)

regimes41.0ms (0.4%)

Memory
-20.5MiB live, 58.8MiB allocated
Counts
32 → 2
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
(*.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)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) 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 (neg.f64 (sin.f64 th)) (/.f64 #s(literal -1 binary64) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky))))
(/.f64 #s(approx (sin th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #s(literal -1/6 binary64) th)) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (*.f64 (neg.f64 (sin.f64 kx)) (/.f64 #s(literal -1 binary64) ky))))
(/.f64 #s(literal 1 binary64) (/.f64 #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) (/.f64 (sin.f64 kx) ky)) (sin.f64 th)))
(/.f64 (sin.f64 th) (/.f64 #s(literal 1 binary64) #s(approx (/ (sin ky) (sqrt (+ (* (sin kx) (sin kx)) (* (sin ky) (sin ky))))) (/.f64 ky (sin.f64 kx)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (*.f64 (-.f64 (*.f64 th th) (*.f64 #s(literal 1/36 binary64) (pow.f64 th #s(literal 6 binary64)))) (/.f64 #s(literal 1 binary64) (-.f64 th (*.f64 (pow.f64 th #s(literal 3 binary64)) #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 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (/.f64 (pow.f64 kx #s(literal 3 binary64)) ky) #s(literal -1/6 binary64) (/.f64 kx ky)))))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (fma.f64 (pow.f64 kx #s(literal 3 binary64)) (fma.f64 (/.f64 (*.f64 kx kx) ky) (fma.f64 (*.f64 #s(literal -1/5040 binary64) kx) kx #s(literal 1/120 binary64)) (/.f64 #s(literal -1/6 binary64) ky)) (/.f64 kx ky)))))
Outputs
(*.f64 #s(approx (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (/.f64 ky (sin.f64 kx))) (sin.f64 th))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

4 calls:

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

Compiled 19 to 23 computations (-21.1% saved)

regimes34.0ms (0.3%)

Memory
16.4MiB live, 54.9MiB 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) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) th) #s(literal -1/6 binary64) 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 (+ (* (pow th 3) -1/6) 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 th) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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 (*.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64))) th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (+.f64 (*.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (pow.f64 (*.f64 th th) #s(literal 3/2 binary64)) #s(literal -1/6 binary64) th)))
#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 (/.f64 th (sin.f64 kx)) ky)))
#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)) (fma.f64 (*.f64 th th) #s(literal 1/120 binary64) #s(literal -1/6 binary64)) th)))
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) th) (*.f64 (-.f64 (/.f64 #s(literal 1 binary64) (*.f64 th th)) #s(literal 1/6 binary64)) (pow.f64 th #s(literal 3 binary64))))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 #s(literal -1/6 binary64) (pow.f64 th #s(literal 3 binary64)) th)))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (/.f64 #s(literal 1 binary64) (/.f64 #s(literal 1 binary64) (fma.f64 (pow.f64 th #s(literal 3 binary64)) #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) (fma.f64 (exp.f64 (*.f64 (log.f64 th) #s(literal 3 binary64))) #s(literal -1/6 binary64) th)))
Outputs
(/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx ky))))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))
Calls

6 calls:

6.0ms
kx
5.0ms
(sin.f64 ky)
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)))))
5.0ms
(sin.f64 kx)
5.0ms
ky
Results
AccuracySegmentsBranch
43.9%3(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
43.9%3kx
45.4%2ky
44.3%4(sin.f64 kx)
45.2%2(sin.f64 ky)
49.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)))))
Compiler

Compiled 23 to 31 computations (-34.8% saved)

regimes9.0ms (0.1%)

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

2 calls:

4.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))
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
41.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))
45.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 29 to 24 computations (17.2% saved)

regimes32.0ms (0.3%)

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

8 calls:

6.0ms
(sin.f64 kx)
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)))))
4.0ms
(sin.f64 ky)
3.0ms
(sin.f64 th)
Results
AccuracySegmentsBranch
35.6%2(sin.f64 kx)
36.4%2(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
36.5%2kx
32.0%1th
32.0%1(sin.f64 th)
36.1%2(sin.f64 ky)
35.6%2ky
40.5%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 26 to 38 computations (-46.2% saved)

regimes17.0ms (0.2%)

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

7 calls:

2.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
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)))))
2.0ms
ky
2.0ms
(sin.f64 ky)
2.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
32.0%1ky
32.0%1(sin.f64 kx)
32.0%1(sin.f64 ky)
32.0%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
32.0%1kx
32.0%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))
32.0%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)))))
Compiler

Compiled 39 to 44 computations (-12.8% saved)

regimes19.0ms (0.2%)

Memory
1.3MiB live, 40.5MiB allocated
Accuracy

Total 0.0b remaining (0%)

Threshold costs 0b (0%)

Counts
4 → 1
Calls
Call 1
Inputs
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 th th) (*.f64 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) (fma.f64 (*.f64 (*.f64 #s(literal -1/6 binary64) th) th) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th 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) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
Calls

9 calls:

2.0ms
(*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) (sin.f64 th))
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)))))
2.0ms
(sin.f64 th)
2.0ms
(sin.f64 ky)
2.0ms
(sin.f64 kx)
Results
AccuracySegmentsBranch
19.4%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)))))
19.4%1(sin.f64 ky)
19.4%1kx
19.4%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))
19.4%1(sin.f64 kx)
19.4%1ky
19.4%1th
19.4%1(sin.f64 th)
19.4%1(pow.f64 (sin.f64 kx) #s(literal 2 binary64))
Compiler

Compiled 42 to 51 computations (-21.4% saved)

bsearch1.0ms (0%)

Memory
1.6MiB live, 1.6MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9975901580425988
0.9999999999999699
0.0ms
5.04756745285228e-7
0.00806507072246505
0.0ms
-0.03353092759129409
6.426993384642814e-305
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.5MiB live, 1.5MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9975901580425988
0.9999999999999699
0.0ms
5.04756745285228e-7
0.00806507072246505
0.0ms
-0.03353092759129409
6.426993384642814e-305
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.9975901580425988
0.9999999999999699
0.0ms
0.22006350090461518
0.26229352113141685
0.0ms
-0.12443213482747073
-0.09575764602115347
0.0ms
-1.0
-0.9998723382083371
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.9975901580425988
0.9999999999999699
0.0ms
0.22006350090461518
0.26229352113141685
0.0ms
-0.12443213482747073
-0.09575764602115347
0.0ms
-1.0
-0.9998723382083371
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
2.0MiB live, 2.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9975901580425988
0.9999999999999699
0.0ms
0.22006350090461518
0.26229352113141685
0.0ms
-0.12443213482747073
-0.09575764602115347
0.0ms
-1.0
-0.9998723382083371
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.9975901580425988
0.9999999999999699
0.0ms
0.22006350090461518
0.26229352113141685
0.0ms
-0.12443213482747073
-0.09575764602115347
0.0ms
-1.0
-0.9998723382083371
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.3MiB live, 1.3MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.9975901580425988
0.9999999999999699
0.0ms
0.22006350090461518
0.26229352113141685
0.0ms
-0.12443213482747073
-0.09575764602115347
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch34.0ms (0.3%)

Memory
1.3MiB live, 39.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
narrow-enough
Steps
TimeLeftRight
16.0ms
5.501131445909942e+265
1.884435028274946e+266
15.0ms
7.931629803620206
28.86491858604448
Samples
24.0ms160×0valid
Compiler

Compiled 479 to 408 computations (14.8% saved)

Precisions
Click to see histograms. Total time spent on operations: 20.0ms
ival-sin: 13.0ms (65.9% of total)
ival-pow2: 3.0ms (15.2% of total)
ival-div: 1.0ms (5.1% of total)
ival-add: 1.0ms (5.1% of total)
ival-mult: 1.0ms (5.1% of total)
ival-sqrt: 1.0ms (5.1% 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
narrow-enough
Steps
TimeLeftRight
1.0ms
5.501131445909942e+265
1.884435028274946e+266
1.0ms
7.931629803620206
28.86491858604448
Compiler

Compiled 479 to 408 computations (14.8% saved)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.498156592784292e-7
5.2158246724408235e-5
0.0ms
1.1948209223331668e-170
1.2714551165816909e-170
Compiler

Compiled 18 to 18 computations (0% saved)

bsearch1.0ms (0%)

Memory
1.0MiB live, 1.0MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
1.498156592784292e-7
5.2158246724408235e-5
0.0ms
1.1948209223331668e-170
1.2714551165816909e-170
Compiler

Compiled 18 to 18 computations (0% saved)

bsearch1.0ms (0%)

Memory
0.7MiB live, 0.7MiB allocated
Algorithm
left-value
Steps
TimeLeftRight
0.0ms
0.00806507072246505
0.22006350090461518
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
5.04756745285228e-7
0.00806507072246505
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
8.07468377526405e-17
4.105713035062851e-15
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
4.105713035062851e-15
5.04756745285228e-7
Compiler

Compiled 19 to 19 computations (0% saved)

bsearch13.0ms (0.1%)

Memory
15.4MiB live, 15.4MiB allocated
Algorithm
binary-search
Stop Event
narrow-enough
Steps
TimeLeftRight
12.0ms
1.6764876191057544e-32
1.4813512630009123e-28
Samples
7.0ms128×0valid
Compiler

Compiled 435 to 355 computations (18.4% 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)

simplify41.0ms (0.4%)

Memory
-26.6MiB live, 54.0MiB allocated
Algorithm
egg-herbie
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
01991883
12381883
22591883
32691883
42751883
52761883
Stop Event
saturated
Calls
Call 1
Inputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.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/288230376151711744 binary64)) (*.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)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/4722366482869645213696 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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 4494592428115755/4503599627370496 binary64)) (*.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 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 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 -5764607523034235/288230376151711744 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/4722366482869645213696 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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 4494592428115755/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 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 -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 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 -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))) (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 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 -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 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 -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)) (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 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 -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 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 -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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))))))
(if (<=.f64 (/.f64 (sin.f64 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 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 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 -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 th #s(literal 8 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)) (if (<=.f64 th #s(literal 124999999999999996679778106770028413234689820140352968824214073998393245503055582086755550559608586126893645952874538648770728073002893367627293717413641932906015326682414263384254911476446166152456106113442875524736314023474308737046302599191645436677934111508135936 binary64)) (/.f64 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 th #s(literal 8 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) (if (<=.f64 th #s(literal 124999999999999996679778106770028413234689820140352968824214073998393245503055582086755550559608586126893645952874538648770728073002893367627293717413641932906015326682414263384254911476446166152456106113442875524736314023474308737046302599191645436677934111508135936 binary64)) (/.f64 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky))) #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 3263311827866217/271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 944473296573929/4722366482869645213696 binary64)) (/.f64 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky))) #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 3263311827866217/271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 944473296573929/4722366482869645213696 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)) #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 5764607523034235/576460752303423488 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 4722366482869645/4722366482869645213696 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 2028240960365167/20282409603651670423947251286016 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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 6338253001141147/1267650600228229401496703205376 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 (/.f64 th (sin.f64 kx)) 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 3311214647077827/5708990770823839524233143877797980545530986496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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)) (sin.f64 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) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
Outputs
(/.f64 (sin.f64 th) (/.f64 (hypot.f64 (sin.f64 ky) (sin.f64 kx)) (sin.f64 ky)))
(*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.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/288230376151711744 binary64)) (*.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)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/4722366482869645213696 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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 4494592428115755/4503599627370496 binary64)) (*.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 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -5764607523034235/288230376151711744 binary64)) (*.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 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)))) #s(literal 2 binary64))) (sin.f64 ky)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4722366482869645/4722366482869645213696 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (*.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 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)))) #s(literal 2 binary64))) (sin.f64 ky)) (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 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 -5764607523034235/288230376151711744 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 kx) #s(literal 2 binary64)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64))))) #s(literal 4722366482869645/4722366482869645213696 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky 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 4494592428115755/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 ky #s(literal 2 binary64)))) #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 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -5764607523034235/288230376151711744 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 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)))) #s(literal 2 binary64))) (sin.f64 th)) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4722366482869645/4722366482869645213696 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 (fma.f64 (sin.f64 kx) (sin.f64 kx) #s(approx (pow (sin ky) 2) (*.f64 ky ky)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4494592428115755/4503599627370496 binary64)) (*.f64 (/.f64 (sin.f64 ky) (/.f64 (sqrt.f64 (fma.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))) #s(literal 2 binary64) (*.f64 (-.f64 #s(literal 1 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) kx))) #s(literal 2 binary64)))) #s(literal 2 binary64))) (sin.f64 th)) (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 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 -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 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 -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #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) (-.f64 #s(literal 1/2 binary64) (*.f64 (cos.f64 (*.f64 #s(literal 2 binary64) ky)) #s(literal 1/2 binary64)))))))) (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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 (sqrt.f64 (/.f64 #s(literal 1 binary64) (fma.f64 (sin.f64 kx) (sin.f64 kx) (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) ky))))))) (*.f64 (sin.f64 ky) th))) (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 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 -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 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 -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)) (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 ky))) (sin.f64 ky)))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)) (/.f64 (sin.f64 th) (/.f64 #s(approx (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (fma.f64 (*.f64 (/.f64 #s(literal 1/2 binary64) (sin.f64 ky)) kx) kx (sin.f64 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 -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 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 -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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))))))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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))))))
(if (<=.f64 (/.f64 (sin.f64 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 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 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 -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -1 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 ky) #s(literal 2 binary64)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 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 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 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 4494592428115755/4503599627370496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) 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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal -3602879701896397/36028797018963968 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 1/4 binary64)) (/.f64 (sin.f64 th) (/.f64 (sqrt.f64 #s(approx (+ (* (sin kx) (sin kx)) (pow (sin ky) 2)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64)))) (sin.f64 ky))) (if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #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) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th)))))
(if (<=.f64 th #s(literal 8 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 (sin.f64 ky) (hypot.f64 (sin.f64 kx) (sin.f64 ky))) th)) (if (<=.f64 th #s(literal 124999999999999996679778106770028413234689820140352968824214073998393245503055582086755550559608586126893645952874538648770728073002893367627293717413641932906015326682414263384254911476446166152456106113442875524736314023474308737046302599191645436677934111508135936 binary64)) (/.f64 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky))) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (sin.f64 th))))
(if (<=.f64 th #s(literal 8 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) (*.f64 (/.f64 th (hypot.f64 (sin.f64 kx) (sin.f64 ky))) (sin.f64 ky))) (if (<=.f64 th #s(literal 124999999999999996679778106770028413234689820140352968824214073998393245503055582086755550559608586126893645952874538648770728073002893367627293717413641932906015326682414263384254911476446166152456106113442875524736314023474308737046302599191645436677934111508135936 binary64)) (/.f64 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky))) #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 3263311827866217/271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 944473296573929/4722366482869645213696 binary64)) (/.f64 (sin.f64 th) (/.f64 (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) (*.f64 ky ky)))) (sin.f64 ky))) #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 3263311827866217/271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 944473296573929/4722366482869645213696 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)) #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 3263311827866217/271942652322184754529069161754863937192751676276240344678115398758606622648756348282451201159797394262471336696958208519857448620878186106577674229128492724195241610667721328144244801536 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (sin.f64 kx))) (sin.f64 th)) (if (<=.f64 (sin.f64 ky) #s(literal 944473296573929/4722366482869645213696 binary64)) (*.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (-.f64 #s(literal 1/2 binary64) (*.f64 #s(literal 1/2 binary64) (cos.f64 (*.f64 #s(literal 2 binary64) 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 5764607523034235/576460752303423488 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 5764607523034235/576460752303423488 binary64)) (*.f64 (/.f64 (sin.f64 ky) #s(approx (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2))) (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 4722366482869645/4722366482869645213696 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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 4722366482869645/4722366482869645213696 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 2028240960365167/20282409603651670423947251286016 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 2028240960365167/20282409603651670423947251286016 binary64)) (/.f64 (sin.f64 th) #s(approx (/ (sqrt (+ (* (sin ky) (sin ky)) (* (sin kx) (sin kx)))) (sin ky)) #s(approx (/ (sin kx) ky) (/.f64 kx 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 6338253001141147/1267650600228229401496703205376 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 (/.f64 th (sin.f64 kx)) 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 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 6338253001141147/1267650600228229401496703205376 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 (/.f64 th (sin.f64 kx)) 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 3311214647077827/5708990770823839524233143877797980545530986496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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)) (sin.f64 th)))
(if (<=.f64 (/.f64 (sin.f64 ky) (sqrt.f64 (+.f64 (pow.f64 (sin.f64 ky) #s(literal 2 binary64)) (pow.f64 (sin.f64 kx) #s(literal 2 binary64))))) #s(literal 3311214647077827/5708990770823839524233143877797980545530986496 binary64)) #s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) #s(approx (+ (* (pow th 3) -1/6) 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)) (sin.f64 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) (fma.f64 (*.f64 #s(literal -1/6 binary64) (*.f64 th th)) th th)))
#s(approx (* (/ (sin ky) (sqrt (+ (pow (sin kx) 2) (pow (sin ky) 2)))) (sin th)) #s(approx (sin th) (fma.f64 (*.f64 (*.f64 th th) #s(literal -1/6 binary64)) th th)))

soundness1.9s (18.7%)

Memory
26.7MiB live, 1 015.6MiB allocated
Iterations

Useful iterations: 0 (0.0ms)

IterNodesCost
049301
080254
1279247
21522247
09330244
04472186
114232129
254332003
086461876
048270
080265
1250252
21431252
09350252
04632551
114992448
259872351
082632221
037200
062175
1194171
21082171
08130171
01349
02249
16249
233849
3290249
0828434
05563029
118222930
271152803
083972625
03171402
110111353
238471261
377941261
080971188
Stop Event
fuel
iter limit
node limit
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
iter limit
node limit
iter limit
node limit
iter limit
Compiler

Compiled 4 307 to 1 684 computations (60.9% saved)

preprocess214.0ms (2.1%)

Memory
-11.2MiB live, 306.0MiB allocated
Remove

(negabs ky)

(negabs th)

(abs kx)

Compiler

Compiled 3 930 to 528 computations (86.6% saved)

end0.0ms (0%)

Memory
0.0MiB live, 0.0MiB allocated

Profiling

Loading profile data...